CVS output to web with CruiseControl and Ant


During the telecon I promised to look into CruiseControl and Ant to check 
if they could be used to (re)generate static web pages based on the CVS 
repository content each time something on CVS changes. I found something on 
this in Chapter 3 ("Scheduled builds") of "Pragmatic Project Automation" by 
Mike Clark [1].
You need a config.xml with the following things:
* <project name="testsuite" buildafterfailed="false">
   The name attribute identifies the project.
* <bootstrappers>
file="logs/testsuite/currentbuildstatus.txt" />
   This writes a message to a file indicating that a build
   cycle has begun.
* <modificationset quietperiod="60">
     <cvs localworkingcopy="checkout/testsuite" />
   This tells CruiseControl what to watch.
   It also tells CruiseControl that the CVS repository
   must be inactive for 60 seconds before a build starts.
* <schedule interval="60">
     <ant buildfile="build.xml" target="buildWeb" />
   Tells CruiseControl when to attempt a build: here
   CruiseControl will wake up every 60 seconds to check
   for changes in the "modificationset" (see above).
   The ant element tells CruiseControl what build to run.

This is not a full description, but I think this is sufficient
to decide if we want to use this tool.
Oh, and CruiseControl is open source:

Best regards,


[1] Tip: enter "project automation" and "CVS trigger" into Google's search 
form to find the PDF version of that chapter.

Christophe Strobbe
K.U.Leuven - Departement of Electrical Engineering - Research Group on 
Document Architectures
Kasteelpark Arenberg 10 - 3001 Leuven-Heverlee - BELGIUM
tel: +32 16 32 85 51 

Received on Wednesday, 16 August 2006 19:09:48 UTC