Configure StarTeam repository

For Windows platform, you will need to have a full installation of StarTeam SDK runtime (which will install some runtime dlls and put them in the Windows system path). Normally this is the part of StarTeam client installation. Please go to http://www.borland.com for licensing information. Here is the list of properties for this adaptor:

Project location

Location of a StarTeam project is defined as: <servername>:<portnum>/<projectname>, where <servername> is the host where the StarTeam server runs, <portnum> is the port number the StarTeam server uses, default value is 49201. <projectname> is a StarTeam project under this StarTeam server.

User

User name to login to the StarTeam server.

Password

Password to login to the StarTeam server.

Convert EOL?

The following values are possible:

yes: all ASCII files will have their end-of-line characters adjusted to the EOL type of the local machine on checkout

no: the files will be checked out with whatever EOL characters are used on the server

This property is optional. If not specified, it will default to yes.

Time difference threshold

Specify time difference threshold (measured in seconds) between build server and StarTeam server. Time difference between build server and StarTeam server should not exceed this value. Otherwise, checkouts may fail due to trying to pull codes of future time from StarTeam server. However, you should not set a too large threshold in order to check out latest codes. For most cases, 10 seconds will be a good choice.

Quiet period

Number of seconds current repository should be quiet (without checkins) before QuickBuild decides to check out the code from this repository for a build. This is used to avoid checking out code in the middle of some other checkins. This property is optional. When set as 0, quiet period will not be used before checking out code to build.

Modules

Here are list of properties should be configured in order to define a StarTeam module:

StarTeam view

Specify a StarTeam view. If it is left empty, the root view of the current StarTeam project will be used.

Source path

Specify a path relative to the root of the above StarTeam view. Enter / to specify the root.

Label

Specify the label for the above StarTeam view. When left empty, the latest version of specified view is assumed.

Destination path

Specify the directory relative to the checkouts directory of current configuration. Contents under the above source path will be retrieved to this directory. When left empty, retrieved code will be put into directory specified in source path, relative to the checkouts directory.

StarTeam view stands for a StarTeam view, and Label stands for a label of this StarTeam view. If StarTeam view is left empty, the root StarTeam view will be used. Source path is a path relative to the root of the chosen StarTeam view. If Destination path is defined, the contents from StarTeam repository will be retrieved to the Destination path relative to configuration checkouts directory, otherwise the contents will be put to the Source path relative to the configuration checkouts directory.

[Warning]Warning

When define modules, If you want QuickBuild to create new label after build, you should define only one module per StarTeam view. The reason is: When create label, QuickBuild goes through each defined module and tries to create view label inside the StarTeam view associated with that module. If more than one module is defined for a particular StarTeam view, QuickBuild will try to create the same view label more than once in that view, and causes an Label already exist exception. Take an example, let's assume we've defined two modules:

  • The first module

    StarTeam view

    development

    Source path

    componentA

    Label

    Destination path

  • The second module

    StarTeam view

    development

    Source path

    componentB

    Label

    Destination path

When QuickBuild tries to create new label, say v2_0, it will go through these two defined modules, and try to create view label v2_0 for their associated StarTeam view respectively, which will cause the same view label being created twice in development view, and causes error consequently. To avoid this, at StarTeam side, you can create another view, say componentB-development rooted at /componentB and set branch on change option. At QuickBuild side, change definition of second module to be:

StarTeam view

componentB-development

Source path

/

Label

Destination path

componentB

In this way, view label v2_0 will be created in different branch view, which is allowed in StarTeam.