I ran across a post by Andrej Koelewijnvia on that made reference to an open source project named CruiseControl.

CruiseControl is a framework for a continuous build process. It includes, but is not limited to, plugins for email notification, Ant, and various source control tools. A web interface is provided to view the details of the current and previous builds.

I’ve worked in environments with automated build processes and think they are absolutely wonderful. There are some significant advantages to an automated build process:

  • Less time spent tagging and building code to servers.
  • Predictable process for build and deploy (you do it with technology, rather than admins typing commands) so that your deploys are also “managed” across environments.
  • Mitigates big unknowns during integration. I’m not saying this will decrease the integration time spent on a project, but rather it will increase the likelihood of finding a show-stopping issue early.

    Imagine a progressive work environment (a la Dot Com) where engineers are kindred spirits. They are working late hours, ordering pizza, playing with Nerf guns. This is the type of environment where the following extension would be useful.

    If you break the build, you have to sit in the dark all day.