Continuous Integration just got interesting

I used to describe CI as "cron with style". I was trying to emphasise the value of simplicity in your CI implementation (no fancy stuff, just something that works) and pushing logic into the build, where you can hopefully handle it better. Time to kill that name anyway. Sorry Buzz.

For a long time, CruiseControl has been the daddy of CI systems. Competitors have come and gone in the past few years that I have been doing CI, but the biggest bump on the CI landscape has been Cruise. Why?

  • It's established.
  • It supports the most SCM systems.
  • It supports the most build systems.
  • The code has had a workout through some tough projects.

Now there's some other shapes on the landscape: Team City, and Hudson, and AntHill Pro.

Team City has features that you shouldn't need, if you're doing the right thing. But if you've gone astray, they might help you a lot. For example, you can stop a running build and change the execution order of queued builds. You can also do distributed builds. The feature that the developers will like is the delayed commit. With the tight IDE integration you can let TeamCity run the build and checkin only if the build passes. You can also do a test run on the server (called a Private Build) for your own perusal and find out if the build will pass. Very thoughtful features.

Hudson is a new tool, but it could become a very compelling tool at the entry level of Continuous Integration. It's very simple and is designed to have a great out of the box experience. That wouldn't be so newsworthy if it didn't also have distributed build features and a simple point and click configuration interface.

No discussion of the CI landscape would be complete without discussing the very established product AntHill Pro. The guys at urbancode have also moved towards added convenience for the team by making it easy to use any kind of build tool, and adding a lot of useful features. The one I wanted to mention here is promoting builds to different environments from the CI server. Again, thoughtful.

The CruiseControl Enterprise team aren't resting on their laurels, either. I'll update this if I can get a comment.

DevOps New Zealand