CI Cage Fight – Cruise

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.

2 thoughts on “CI Cage Fight – Cruise

  1. Chris Read says:

    One thing to note: the selenium recording does not happen automagically out of the tin. You need to make sure your browser host is running a VNC server, and you then need to invoke pyvnc2swf in your build to record the output for you. You then just configure Cruise to pick up the flash file and display it in a custom tab.

    I feel a blog post coming on with some examples on how to do this…

  2. […] guess is that Team City and Cruise won’t gain critical mass. Team City because there’s no tight integration with the rest […]

Comments are closed.

%d bloggers like this: