CruiseControl.NET : Rational ClearCase Source Control Block
This page last changed on May 20, 2005 by gtackley@thoughtworks.com.
Rational ClearCase ConfigurationTypical / Minimal ConfigurationFor most uses the following is all you'll need in your ccnet.config : <sourcecontrol type="clearCase"> <viewPath>C:\PATH\TO\SOURCE</viewPath> <autoGetSource>true</autoGetSource> </sourcecontrol> This will:
The <viewPath> specifies a directory on your filesystem that CCNet monitors for changes. The path must be a versioned object. CCNet checks the actual VOB for changes, not the local filesystem. <viewPath> doesn't have to be the root of the local ClearCase view. It may be any of the root's children or even a single object. Full Configuration<sourcecontrol type="clearCase"> <viewPath>C:\PATH\TO\SOURCE</viewPath> <branch>main</branch> <autoGetSource>false</autoGetSource> <useLabel>true</useLabel> <useBaseline>false</useBaseline> <projectVobName>PROJECT_VOB_NAME</projectVobName> <viewName>PROJECT_VIEW_NAME</viewName> <executable>cleartool.exe</executable> <timeout>50000</timeout> </sourcecontrol>
Common ProblemsThe build is initiated when users check in on private branchesBy default, ClearCase returns a history for every file in every branch, even if the config spec limits to a single branch. You must specify <branch> in order to limit which changes CCNet can see. After the build is successful I get a "Baseline not found" error message.An example of this message is: ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation failed: cleartool: Error: Baseline not found: "CruiseControl.NETTemporaryBaseline_05-06-2004-16-34-15". To correct the problem, change the value in that element to the name of the project VOB. Known BugsWhen I view my baselines, I see that they're called CruiseControl.NET[something] instead of v1.0.0.4.This is a bug in ClearCase; Rational is aware of it. It only occurs if you're using baselines.CCNet creates a temporary baseline with the prefix CruiseControl.NET before renaming it to the final value, such as v1.5.2.3. Depending on how you view baselines in ClearCase, you may see the temporary or real name. For example, if you use the admin console, you'll see the old, temporary value. If use use cleartool lsbl, you'll see the correct one:M:\gsmith_GS_Project_int\GS_UCM_VOB>cleartool lsbl 06-May-04.16:28:27 v1.0.0.1 gsmith "CruiseControlTemporaryBaseline_05-06-200 4-16-28-26" stream: GS_Project_Integration@\GS_PVOB component: GS_UCM_VOB@\GS_PVOB 06-May-04.16:34:16 v1.0.0.2 gsmith "CruiseControl.NETTemporaryBaseline_05-06 -2004-16-34-15" stream: GS_Project_Integration@\GS_PVOB component: GS_UCM_VOB@\GS_PVOB CruiseControl.NET sees checkins on all branches, not just the one specified in my config specThis is a known issue (CCNET-354) due to the fact that the ClearCase history command (lshist) returns a complete history for the file, not just the history that can be seen by the config spec.The updates still work correctly so these "phantom" builds contain valid files i.e. not the branched versions that CruiseControl.NET reports on its modification lists. |
Document generated by Confluence on Jun 26, 2005 17:22 |