CruiseControl.NET (cc.net hereinafter) has build queues ( http://confluence.public.thoughtworks.org/display/CCNET/Project+Configuration+Block ), which allows you to serialize assemblies that depend on a specific assembly order. I am in the process of emulating this behavior in the java version of cruisecontrol, but the functionality does not map one to one. The reason, however, is that I generally switch from the .net version to the java version, because the .net kernel drops mono (cc.net night build and mono night build two months ago). The error is related to the processing of monos threads, but voids are trying to start cc.net.
Documentation on this issue can be difficult if you do not notice the version numbers that correspond to the configuration / documentation examples (confluence.public.thoughtworks.org has updated configuration documentation, whereas ccnet.sourceforge.net has I know that ccnet is most likely a dead site, but if you do not carefully read the data for each page you visit, this may bite you.)
In addition, blocking the sourcecontrol for cvs and svn in cc.net is more granular and featurerich than their counterpart in the java version, but this was not a problem in my work. The java version also easily extends / modifies the behavior of re: plugin, but you just would like to see that such work goes upstream, not forking.
I'm just impressed with both the java version and fork in .net (modulo mono runtime behavior), but you really don't want to try any other cruisecontrol forks. I had peripheral experience with hudson, and the functions were simply not enough to persuade me to cruisecontrol. Hudson has a (somewhat colored) map comparing Hudson and CruiseControl (java) at http://hudson.gotdns.com/wiki/display/HUDSON/Home
A viable alternative is the implemented python buildbot ( http://buildbot.net/trac ). It doesn't have fancy gui panels, and the setup is a bit command line related, but if you are doing distributed assemblies, it is very easy to set up and run it.
Steen
source share