Note: I’m not going to even pretend to be unbiased about this one. I used to work for these people. I was involved in hiring Chris, and I was involved in some early discussions about previous incarnations of this product.
Chris Read presented Cruise, from ThoughtWorks Studios. Loads of people think that this product is the payware version of CruiseControl. If Cruise is a relative of CruiseControl, they are third cousins, once removed. And they don’t look alike. It’s almost completely a from scratch rewrite, and by the time I write this, the last bit of CruiseControl code should be gone from it.
Cruise has all the features that you’d come to expect in a commercial CI server these days: distributed build facility, whizzy UI, repository of built artifacts, etc. There’s two features that I’d like to talk about: the Build Pipeline and the movies.
When your CI build starts to get uncomfortably long, what do you do? Assuming you can’t shorten it, you can break it up into stages: one for developers so they know that their unit tests passed, another to demonstrate that functional tests pass. If you want to get really fancy, you can map to each stage of the QA process. This whole idea has been dubbed “The Build Pipeline” by ThoughtWorks and it seems like a reasonable implementation.
A couple of the key aspects: you can retreive built artifacts from the first build to use in later builds. So no need to rebuild artifacts or build your own repository. Also, the tool tracks all the builds so you can see that one developer checkin spawned all these builds. That’s mighty useful.
The other useful feature is that it records Flash movies of your Selenium tests. That may not sound like much, but have you ever tried to diagnose a broken Selenium build when it’s not on your PC? I have sat there eyeballing the thing waiting for it to fail. It’s not the kind of feature that you CIO will froth over, but your developers will love it.
Cruise costs money and is closed source software. Two build agents are free. There’s a bunch of other features. LDAP integration is always a good ‘un.