Search code examples
svnbuild-processbuild-automationbuild-management

Automating builds from subversion tags


I'm trying to automate the build process for engineering group. As part of that automation, I'm trying to get to a point where the act of applying a specific tag that adheres to a pattern will kick off an automated process that will do the following:

  • Check out source code
  • Create a build script from a template
  • Build the project

I'm pretty certain I could do this with a post-hook in subversion, but I'm trying to figure out a way to do this with something other than a subversion hook.

  • Would it make sense to monitor the tags directory in the subversion repository to kick off my workflow?
  • Are there any decent tools that help with this (.NET would be great if possible).
  • Am I better off just writing an engine to do this?

My preferences:

  • Existing product that does all or part of this
  • If development work needs to occur, .NET is preferable
  • Works with Windows (we've got a Linux based repo, but builds all occur on windows)

Solution

  • I like hudson - EASY to set up and works out of the box with SVN.

    You can configure it to build on every commit.

    I downloaded it and got started building with it within a day. It has gone through a lot of tweaks, but I would recommend it to anyone.

    I have also used cruise control but am not as happy with that. I don't have any specific reasons other than cross-platform issue.

    EDIT

    I recently added a job on my hudson build server that listens for a google/gmail jabber chat. I can "promote" a "regular" build to a release build with this mechanism. I just set up a new job that does the steps necessary to promote/publish a private build into a release candidate.