Understand the key terms

This topic defines the key terms associated with the CrossPlatformSCM package. You should be familiar with these terms before using the package.

Configuration records
There are two different configuration record types included with the CrossPlatformSCM package:
SCLMBuildConfig record
An SCLMBuildConfig record is a stateless, reusable, SCLM configuration record that specifies such SCLM host system parameters as the host name, the project, and the build and promote operation options needed to run and promote a build of SCLM objects. An SCLMBuildConfig record is used in conjunction with an SCLMBuild record.
Note: Except for the Configuration Name and Description fields, the editable fields of this record can accept only ASCII characters, regardless of the character set in use. This limitation is due to a restriction with the server component of the SCLM integration running on z/OS®.
CCBuildConfig record
A CCBuildConfig record is a stateless, reusable, Rational® ClearCase® configuration record that specifies the following Rational ClearCase parameters: the build and promote operation views and commands needed to build and promote Rational ClearCase artifacts, and the failure and success keywords you can specify to indicate whether a build or promote operation has succeeded. A CCBuildConfig record is used in conjunction with a CCBuild record.
Build records
There are three build record types included with the CrossPlatformSCM package:
CrossPlatformBuild record
A CrossPlatformBuild record is a stateful, nonreusable, parent record that runs a coordinated build and promote operation in any SCLM projects and Rational ClearCase views specified by its SCLMBuild and CCBuild child records. A CrossPlatformBuild record must have at least one SCLMBuild or CCBuild child record associated with it, but it can have multiple child records of both types.
SCLMBuild record
An SCLMBuild record is a stateful, nonreusable record that you use to build and promote a single SCLM project on a given host. You can create an SCLMBuild record to run in batch or online mode. An SCLMBuild record is used in conjunction with an SCLMBuildConfig record.
Note: Except for the Headline and Description fields, the editable fields of this record can accept only ASCII characters, regardless of the character set in use. This limitation is due to a restriction with the server component of the SCLM integration running on z/OS.
CCBuild record
A CCBuild record is a stateful, nonreusable record that you use to build and promote a single Rational ClearCase view. A CCBuild record is used in conjunction with a CCBuildConfig record.
Build record states
Build records can move through seven different states as they proceed through the build and promote operation process. The following list defines the states through which build records in the CrossPlatformSCM package can move and gives the order through which they move from beginning to end.

These states change in normal operation but can be changed manually by users who belong to the Rational ClearQuest® restricted user group. See Optional: Create a "restricted" Rational ClearQuest user group for more information about this group.

Submitted
The state of a newly created build record.
BuildPending
The state to which a build record moves when a build is started.
BuildFailed
This state has different meanings for Rational ClearCase and SCLM build records:
  • A CCBuild record moves to this state if any of the failure keywords specified in the Build section of its associated CCBuildConfig record are found, if neither success nor failure keywords specified by the CCBuildConfig record are found, if success and failure keywords are both found, or if the build command is unable to run (for example, if the file or directory specified does not exist).
  • An SCLMBuild record moves to this state only when the objects on the host fail to build. Review error messages in <rational_root>\ClearQuest\cpscm.log . See additional information about SCLM communications in <rational_root>\ClearQuest\cpscm_communications.log
  • A CrossPlatformBuild record moves to this state when at least one of its CCBuild and SCLMBuild child records moves to this state.
BuildCompleted
This state has different meanings for Rational ClearCase and SCLM build records:
  • A CCBuild record moves to this state when the build command specified in its CCBuildConfig record runs successfully with no success keyword specified or when a specified success keyword is found in the build output. To verify that a build succeeded with no success keyword specified, check the log file <rational_root>\ClearQuest\cpscm.log, or verify that the files built based on the command that was run.
  • An SCLMBuild record moves to this state only when the objects on the host are built successfully.
  • A CrossPlatformBuild record moves to this state only when all of its CCBuild and SCLMBuild child records move to this state.
PromotePending
The state to which a build record moves when a promote operation is started.
PromoteFailed
This state has different meanings for Rational ClearCase and SCLM build records:
  • A CCBuild record moves to this state if any of the failure keywords specified in the Promote section of the its associated CCBuildConfig record are found, if neither success nor failure keywords specified by the CCBuildConfig record are found, if success and failure keywords are both found, or if the promote command is unable to run (for example, if the file or directory specified does not exist).
  • An SCLMBuild record moves to this state only when the objects on the host fail to be promoted. Review error messages in <rational_root>\ClearQuest\cpscm.log . See additional information about SCLM communications in <rational_root>\ClearQuest\cpscm_communications.log
  • A CrossPlatformBuild parent record moves to this state when at least one of its CCBuild and SCLMBuild child records move to this state.
PromoteCompleted
This state name has different meanings for Rational ClearCase and SCLM build records.
  • A CCBuild record moves to this state when the promote command specified in its CCBuildConfig record runs successfully with no success keyword specified or when a specified success keyword is found in the promote output. To verify that a promote succeeded with no success keyword specified, check the log file <rational_root>\ClearQuest\cpscm.log, or verify that the files were promoted based on the command that was run.
  • An SCLMBuild record moves to this state only when the objects on the host are promoted successfully.
  • A CrossPlatformBuild parent record moves to this state only when all of its CCBuild and SCLMBuild child records also move to this state.
Package
The term package has different meanings in the SCLM and Rational ClearQuest environments:
  • In SCLM, package refers to an architecture definition, which describes the configuration under SCLM control and how it is to be constructed and integrated. Examples are a logical, link, or compile unit. Architecture definitions are created and updated by developers and describe the architecture of an application
  • In Rational ClearQuest, package refers to a set of record types and actions that can be applied to an existing schema to provide a complex feature or function. The new feature or function then becomes a permanent part of the schema. A Rational ClearQuest package can add a function that has been found useful by many Rational ClearQuest customers, such as the ability to send e-mail notifications when defects are submitted or the ability to associate attachments to records.
Promote
The term promote has different meanings in the SCLM and Rational ClearCase environments:
  • In SCLM, promote refers to moving a successfully built SCLM package from one project group to another, according to a project's architecture and project definitions. An SCLM promote operation can also be thought of as the process of moving modified members of an application or of its components within the scope of a package from one level in the project hierarchy to the next. You can perform multiple promote operations on the same build as needed to move the build up your group hierarchy.
    Note: CCBuild records do not support multiple promotion levels. CCBuild records ignore any promote operations subsequent to the first one.
  • In Rational ClearCase, promote refers to running the Rational ClearCase command specified in the Promote Command field of a CCBuildConfig record. This command acts on the Rational ClearCase view specified in the View field of that record. Examples of possible promote operation commands in Rational ClearCase are findmerge, deliver, and customized perl scripts.
    Note: CCBuild records do not support multiple promotion levels. CCBuild records ignore any promote operations subsequent to the first one.

Feedback