This page last changed on Feb 28, 2009 by dhommel.

CVS Configuration Examples

Please refer to Using CruiseControl.NET with CVS for an overview of this block.

For CVS you must define where the CVS executable (if you give a relative path, it must be relative to the ccnet.exe application) is and the working directory for checked out code.

Configuration Changes

As of the CCNet 1.2 release, it is now required to specify the cvsroot and module properties. This allows the CVS provider to support automatic checkouts and to use cvs rlog instead of cvs log which improves performance.

example using pserver authentication

<sourcecontrol type="cvs">
   <executable>..\tools\cvs.exe</executable>
   <cvsroot>:pserver:anonymous@cvs.sourceforge.net:/cvsroot/ccnet</cvsroot>
   <module>ccnet</module>
   <workingDirectory>c:\projects\ccnet</workingDirectory>
</sourcecontrol>

example using ssh via putty

<sourcecontrol type="cvs">
   <executable>c:\putty\cvswithplinkrsh.bat</executable>
   <cvsroot>:ext:mycvsserver:/cvsroot/myrepo</cvsroot>
   <module>mymodule</module>
   <workingDirectory>c:\fromcvs\myrepo</workingDirectory>
</sourcecontrol>

Configuration Elements:

Node Description Type Required Default
executable The location of the cvs.exe executable. string false cvs.exe
cvsroot The cvs connection string. If this is unspecified and your working directory contains a previous checkout, then the CVS client will attempt to determine the correct root based on the CVS folder in your working directory. If the working directory does not contain the source, then this element must be specfied. string true  
module The cvs module to monitor. This element is used both when checking for modifications and when checking out the source into an empty working directory. string true  
branch The branch to check for modifications on. string false  
autoGetSource Specifies whether the current version of the source should be retrieved from CVS. bool false true
labelOnSuccess Specifies whether or not the repository should be labelled after a successful build bool false false
tagPrefix By default the CVS tag name used when labelOnSuccess is set to true is ver-BuildLabel. If you specify this property, the prefix ver- will be replaced with the value you specify. string false ver-
cleanCopy Specifies whether or not a clean copy should be retrieved bool false true
forceCheckout Specifies whether the checkout command should be used instead of update bool false false
useHistory Specifies whether or not to use the cvs history command to speed up modification checks bool false false
timeout Sets the timeout period for the source control operation. See Timeout Configuration for details. Timeout false 10 minutes
suppressRevisionHeader Suppresses headers that do not have revisions within the specified modification window. Setting this option to true will reduce the time that it takes for CCNet to poll CVS for changes. Only fairly recent versions of CVS support this option. Run cvs --help log to see if the -S option is listed. This option was added in CCNet 1.2. bool false false
workingDirectory The folder that the source has been checked out into. string false Project working directory
restrictLogins Only list modifications checked in by specified logins string false false
webUrlBuilder The url builder section for the ViewCVS server. (see Using CruiseControl.NET with CVS) string false none
issueUrlBuilder Converts the comment (or parts from it) into an url pointing to the issue for this build.
See Issue Builder for more details
Group N/A false
Document generated by Confluence on Mar 14, 2009 02:55