Follow @RoyOsherove on Twitter

Trying out Team City - Looks Promising!

I've been looking both at CI Factory by Jay Flowers, and Team City by JetBrains lately. this has to do with the fact that at Typemock we currently have a Continuous Integration solution that is largely based on CruiseControl.NET and MSBuild files.

It sucks.

The MSBuild files are hardly maintainable and the logic for running the build, signing things, obfuscating, licensing, installation, 64 bit versions and more - it's chaos, held by some gum and a couple of strings. Not unlike many other builds I've seen.

We're in the process of moving the builds into FinalBuilder, but I'm also looking for a better CC.NET. CI Factory looks nice in that it is very simple to setup but still requires messing around with MSBuild targets and the like to make your builds work with it.

TeamCity looks very promising. I read this blog post from Elutian about their experience with Team City and wondered what it would be like to work with it against a FinalBuilder script. I installed TeamCity and ran it against SVN and FinalBuilder (like it would run at Typemock) and got it all working in less than 20 minutes. Pretty snazzy and no XML tampering needed to take place, Thank the gods.

The killer feature in Team City?

Delayed Commit(also known as private build). It allows you to run the full build with tests on the server as if you checked in all your changes, but without actually checking in your changes until the build is successful, so you will know if you're about to break the build before you actually break it.

So, I'm thinking, with team city's professional license being free for up to 20 developers and 3 build agents, that we'll give it a shot at Typemock HQ and see what happens.

TDD Anti Patterns

Dependency Injection - Is it relevant beyond unit testing?