CycleMania’s Continuous Integration
Its now public knowledge that I have been working on getting a decent CI integration for the CycleMania project working on a publicly accessable server.
For the record, we are using the following tech for the CI integration. Yes, I WILL write a very detailed how-to on how I set things up, but as I am on my lunchbreak here at work, heres a very quick overview of what we are using:
- TeamCity 5.0 Professional, a free download from JetBrains (Limit of 20 Projects and 20 Users)
- .Net framework 4.0 Beta 2 (obviously)
- Nant 0.85, not as a proper build script, but purely as a glorified as a batch script
- APPCMD command to control IIS7′s App recycling (From inside Nant)
- .Net 4.0′s MSBuild
All this running ontop of Windows 2008 R2 Web Edition, and SQL Server 2008 Express.
Things I have learned is:
- TeamCity 5.0 isnt geared up for .net 4.0 YET, which is fair enough, they said support will be included in 5.1
- TeamCity also seems to be simply geared for building projects and running unit tests, less so for copying files over to another directory with specific paths etc.
- Nant’s contrib project is crap. Fair enough last time it was updated was 3 years ago, but it dosent work.
- You cannot simply recycle an app pool to kill a user instance of SQL Server 2008, to update the .mdf file.
- You really shouldnt run a site from the same directory as SVN, if you plan to update it (re above)
- Nant is all good and well, but also dosent support .net 4.0.
I promise I will expand on most of these points when I have time!

