> >We are, via CruiseControl.  We have 27 projects that all 
> share a master 
> >POM (17 applications & 10 libraries).  Any time someone 
> checks in code 
> >CruiseControl checks it back out, builds the project and dropps a 
> >SNAPSHOT jar in the repository.
> >
> >As of version 2.2 you can have CruiseControl check a 
> project's POM for 
> >SNAPSHOT dependencies and rebuild when their timestamp changes.  So, 
> >anytime a library changes any project that uses it is also 
> rebuilt (and tested).


> Sounds sweet... Care to share an example? Or is this well-known and 
> described behaviour?

I think it's pretty well described at
http://cruisecontrol.sourceforge.net/main/configxml.html

But here are the interesting bits from my crusieControl config

<modificationset quietperiod="120">
    <cvs cvsroot=":pserver:[EMAIL PROTECTED]:/appl/wfa/cvsroot"
localworkingcopy="acr" />
    <mavensnapshotdependency projectFile="acr/project.xml" user="maven"
localRepository="/appl/wfa/maven/repository"/>
</modificationset>

The <cvs> element is the one that checks the source for this projects.
The <mavensnapshotdependency> element is the one that tells
CruiseContorl to look in the project POM for SNAPSHOT dependencies.

<maven goal="clean scm:update-project | test tagBuild
jar:deploy-snapshot jar:install-snapshot  clean"
projectfile="acr/project.xml"
                mavenscript="/appl/wfa/maven/bin/maven" multiple="1" />

The <maven> element performs the listed maven goals.

The two tools work very well together.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to