Nant and subversion
Spent this weekend playing with nant again. A while ago I wrote an article
on using a number of tools for builds, and really since then have been
hands off on our build. It's good that it ran for almost a year without
any serious maintenance (besides deleting old builds), but it also
means I didn't get a chance to stay up to date on the products. Well, a
conversion to svn will change that. Once I had my head wrapped around
svn enough, it was time to move on to the builds.
Expect many more details on this, but I wanted to share my prototype
build file. I created it this weekend for the del.icio.us.net. api/app
I'm working on. One of the major goals of these build files were to
move the coupling of the build from the dedicated build machine, to the
project itself. This allows anyone on the team to build with the same
build procedure the build machine uses, as well as (in a crunch) make a
full releasable build from their machine. This is of course only in the
work files, but the prototype I made over the weekend is a good
starting point for anyone looking for setup a build. The biggest
changes to the old build were a) use 100% relative paths (I can have 50
copies of the source in 50 diff locations, and the build will work 100%
in all of them) b) remove web projects (same as last ().. yay no more
being tied to IIS) c) simplicity rules. I think I attained all of
these. You can check out the prototype build file here.
Editing a build file isnt enough either. So then I moved on to ccnet. I will give more details on that in an upcoming post, but feel free to check out the ccnet setup here.
If I find 100 builds today I'll have to put it under sspi though :)
Sorry for the off port numbers. I need more IPs (anyone know a way to
NAT based on host headers without a 5k$ cisco box?)
Edit : Bug in copyWebFiles. Copy task should just copy **, but that
path should be in the basedir= of the fileset, and remove the flatten
attribute. I'll edit the file when I get home