Synchronizing data with the ClearCase Synchronizer and ClearCase Baseline Importer

IBM® Engineering Workflow Management (EWM) includes the ClearCase Synchronizer, which supports bidirectional synchronization between Rational® ClearCase® source control and EWM; and the ClearCase Baseline Importer, which supports imports in one direction of Rational ClearCase source control and history to EWM.

License note: To perform the task described here, a team typically creates a special user who is assigned the ClearCase Synchronizer Client Access License.
License note: To perform the task described here, you must be assigned the Developer Client Access License.

Though the ClearCase Synchronizer works bidirectionally and the ClearCase Baseline Importer works in one direction, both rely on the same synchronization process. As a result, the synchronizer and importer share many of the same concepts, prerequisites, guidelines, and limitations.

Both connectors require that a synchronization host is configured, with the ClearCase Synchronizer and Rational ClearCase installed on it, and a synchronization process account is created or selected in the repository and added to the team area.

For more information, see the following sections:
Important: Setting up the synchronizer and importer requires expertise in both Rational ClearCase and EWM administration. To maximize your understanding, review these topics before using the synchronizer. Then, use this section as a reference when you set up the first synchronized stream.

Basic concepts

Credentials and Access
Managing the integrations involves performing various operations that require specific credentials and contexts. The different accounts that are needed for synchronization are identified later on. Some of these accounts are used by the synchronization process only. Other accounts are used by designated team members to manage the synchronization environment. In general, any operation that involves accessing Rational ClearCase information, such as importing Rational ClearCase elements, changing the dynamic view, or unlocking a synchronized stream, must be performed on a computer that has access to the Rational ClearCase view for the synchronization stream. Any operation that involves working with the synchronization engine process, such as starting, stopping, or configuring, must be performed on the synchronization host. Other operations, such as requesting a synchronization, can be performed from a EWM client in any context.
Synchronization Host
This Rational ClearCase host supports synchronization. The ClearCase Synchronizer component is installed here. The Rational ClearCase dynamic view is created from here and dedicated solely to synchronization.
Note: A Rational ClearCase VOB server can be a synchronization host.
ClearCase Synchronizer component
This installable component is required to support the ClearCase Synchronizer and ClearCase Baseline Importer. It uses the Jazz® Build Engine to run the synchronization engine process.
Synchronization Engine Process
Also known as the synchronization process, this process runs from the ClearCase Synchronizer component. The process retrieves changes that are created in EWM source control (delivered to ClearCase Synchronized Stream) and checks them in to Rational ClearCase as new versions. It also retrieves changes that are created in Rational ClearCase (identified by the Rational ClearCase dynamic view) and delivers them to a ClearCase Synchronized Stream.
Synchronization process Rational ClearCase account
The Rational ClearCase user account is on the synchronization host. It is the operating system ID that the synchronization engine process runs on.
Synchronization process EWM Account
This EWM user account provides credentials to the synchronization process so that it can access your repository and team area. This user account requires the ClearCase Synchronizer Client Access License, which is a specific type of client access license. The typical user ID for this account is ccsync, but any ID can be designated.
Important: Team members must never use this account to connect to the repository.
Synchronized Stream Creator Account
This user account is logged in when a ClearCase Synchronized Stream is created. This user account is also the owner of the merge workspace for the stream and is responsible for resolving merge conflicts. Any EWM user that is assigned roles for creating EWM streams, workspaces, and build engines can create a ClearCase Synchronized Stream. If necessary, this account can be changed after the initial stream creation.
Restriction: The Synchronized Stream Creator account must be a different account than the synchronization process EWM account.
CLONE Workspace
This specialized repository workspace is owned by the synchronization process EWM account. Incoming change sets from Rational ClearCase are stored here before they are checked in to ClearCase Synchronized Stream. The synchronization engine process attempts to deliver from this workspace to the ClearCase Synchronized Stream. If there are no conflicts during the attempt, then the delivery is finished. If there are conflicts, they must be resolved in the merge workspace by a developer.
Note: When you create a Rational ClearCase Synchronized Stream, a CLONE workspace is also created and configured automatically.
Merge Workspace
This repository workspace is used by developers for merging conflicts between new versions of files or folders on the ClearCase Synchronized Stream (changes from EWM source control) and new versions of the same files and folders in the CLONE workspace (changes from Rational ClearCase source control). This workspace is based on a ClearCase Synchronized Stream. It has that stream and the CLONE workspace as flow targets, and all merged changes are delivered from this workspace to that ClearCase Synchronized Stream by using the synchronized stream creator account.
Note: When you create a Rational ClearCase Synchronized Stream, a Merge workspace is also created and configured automatically.
ClearCase Synchronized Stream
This EWM source control stream either synchronizes with Rational ClearCase source control or imports with history from Rational ClearCase source control.
The following characteristics are apparent when used with the synchronizer:
  • Created automatically
  • Contains files and folders that are selected for synchronization
  • Developers can create repository workspaces that are based on this stream and set it as a flow target for delivering changes
The following characteristics are apparent when used with the importer:
  • Created automatically
  • Contains files and folders that are selected for importation
  • Used only to import information from Rational ClearCase source control to EWM source control
  • Does not send information from EWM source control to Rational ClearCase source control

Synchronizing

To use the ClearCase Synchronizer, you configure one or more Rational ClearCase hosts to support synchronization between EWM and Rational ClearCase. Then, you define one or more ClearCase Synchronized Streams that contain files and folders to import from Rational ClearCase or export from EWM. After this step is complete, users can modify these files and folders in either environment. Regular, automated synchronization keeps both environments up to date.

A synchronization process retrieves changes that are created in EWM and checks them in to Rational ClearCase as new versions. It also retrieves changes that are created in Rational ClearCase and delivers them to a EWM stream called a ClearCase Synchronized Stream. When conflicts occur because files or folders have been modified in both Rational ClearCase and EWM, they are displayed as incoming change sets for a special repository workspace that is known as the merge workspace. The merge workspace owner (typically a team lead) resolves the conflicts and then delivers the merged change sets to the synchronized stream, where they can be accessed by any team member.

To configure synchronization:
  1. Configure a synchronization host.
  2. Create or select a synchronization process account in the repository.
  3. Add the synchronization process account to your team area.
  4. Create a ClearCase Synchronized Stream.
Figure 1 illustrates the interactions among the synchronization host, the Jazz Team Server, and Rational ClearCase.
Figure 1. Synchronization data flow
The synchronization process copies selected versions from a Rational ClearCase view to a Jazz Team Server source control stream called a ClearCase Synchronized Stream.

New versions that are selected by a Rational ClearCase dynamic view running on the synchronization host are committed to the ClearCase Synchronized Stream by the synchronization process. If any items in the synchronized stream have been modified concurrently by EWM users and Rational ClearCase users, they are displayed in an incoming change set for the merge workspace. The merge workspace owner resolves the conflicts, and then delivers the merged results to the ClearCase Synchronized Stream. Any EWM user can create a repository workspace from this stream or add it as a flow target of a repository workspace. Changes that are delivered from a repository workspace to the ClearCase Synchronized Stream are checked in to Rational ClearCase the next time that the synchronization process runs.

Importing

The ClearCase Baseline Importer can import files and folders with historical data from UCM streams and base Rational ClearCase labels. Baseline history is imported from a UCM stream by using some or all of the baselines on that stream. Version history is imported from base Rational ClearCase by using label types with an attached attribute type.

After files, folders, and historical data are imported to EWM, you can change files or folders in EWM, but these changes cannot be exported to Rational ClearCase. You can import subsequent Rational ClearCase history by running a synchronization on the synchronized stream that you created during the initial import.
Note: The import stream changes can be exported to another stream or workspace, and modifications can be made there.

The steps that are used to set up the ClearCase Baseline Importer are similar to the steps that are used to set up the ClearCase Synchronizer because they both require a ClearCase Synchronizer configuration that supports the creation of synchronized streams. They also share some parts of the interface.

To use the ClearCase Baseline Importer:
  • Configure one or more Rational ClearCase hosts to support synchronization between EWM and Rational ClearCase.
  • Create or select a synchronization process EWM account in the repository and add it to the team area.
  • Use the Import wizard and the Select Files wizard to import a UCM or base Rational ClearCase stream and specify resources and history to import.

When you migrate from the Rational ClearCase to the EWM, consider the ClearCase Version Importer. For more information, see Migrating data by using the ClearCase Version Importer.