Known issues with CVS in Bamboo
Bamboo uses CVS rlog
command - this lets you perform a CVS update on your local working directory without checking out your project.
CVS Error logging in Bamboo
Currently, if the server throws an error during a CVS build in Bamboo versions 2.0.x, the application will hang with no indication of any checkout/update problems. There is an open Jira issue tracking this problem.
In order to further debug any CVS issues, you will need to turn up the CVS logging by passing in the -DcvsClientLog=system
system argument to Bamboo.
1) Incompatibility with CVS servers 1.11.1 and below
Support for the rlog
command 1.11.1p and performing a CVS rlog
command returns the following error:
-cvs [rlog aborted]: server does not support rlog
2) Incompatibility with CVS server version 1.11.x when using "." to denote the root module to be checked out.
The CVS rlog
command fails if you are using CVS version 1.11.x, with the following error.
INFO | jvm 1 | 2008/05/15 14:19:10 | E cvs: recurse.c:642: do_recursion: Assertion `strstr (repository, "/./") == ((void *)0)' failed.
INFO | jvm 1 | 2008/05/15 14:19:10 | error
Please upgrade your CVS version to 1.12.x to get around this issue.
3) CVS Checkout format
Due to prior issues, Bamboo will checkout all files (including text files) from the CVS server as binary, however post Bamoo 2.1.2 this behavior can be changed via a system parameter. To do this restart Bamboo with the following parameter (if you have any elastic agents running, ensure that they are shut down before you restart the Bamboo server. If you do not shut down your elastic instances before restarting, they will continue to run and become orphaned from your Bamboo server).
-DCVS_CHECKOUT_BINARY_FORMAT=false
Post 2.1.5 this has been replaced with a more flexible option
-DCVS_CHECKOUT_FORMAT=BINARY
Option | Command Options | Behavior |
---|---|---|
BINARY (Default) | -b | forces all files to be checked out in binary and won't convert any line endings |
TEXT | -kv | forces all files to be checked out as text and converts all line endings (even Binary files) |
NONE |
| lets CVS decide whether or not to convert line endings |
For further reference, on configuring Bamboo start-up options see this document