I’m no RegEx wizard, and when I need it I’m always a bit lost. Then it’s nice to test the things in an easy fashion, which I can do here.
Continious Integration Servers
Continious integration is a big part of my every day work right now, and it is important that things run smoothly. If they don’t you waste tons of time on stuff that’s not really important to producing funtionality. Over the last year I have been using Continuum. I originally opted for that because CruiseControl is a bit cumbersome to configure, and I figured it would probably integrate best with Maven 2 since it’s the same group of people. I has done an alright job, but has a some weaknesses that made me look for alternatives:
- No dependency management between projects and builds
- Triggering a build manually actuallt triggers two builds (double the time)
- For some strange reason our Fitnesse tests keep acting up and hanging. To prevent this I have implemented a process timeout specifically for Fitnesse, but this still slows down the turnaround time when you need to do builds.
- No historical aggregated data
As the project grew it was actually the missing dependency features, double builds and the hangs in Fitnesse that forced me to look at other alternatives. Because it didn’t have dependency handling we got failures due to build order quite often, and when we got one failure it took almost an hour to get it back to a green state (we use lava lamps).
Enter Bamboo. 🙂 It’s a fairly new build server from Atlassian the guys also writing the excellent Confluence and Jira products. It is payware, but it is nothing compared to the time we will save. It is not a radical change compared to Continuum, but it sports:
- Smooth user interface
- RSS feeds
- Dependency builds
- Editing the build queue
- Historical aggregated data
- Easy and excellent pugin architecture
- Commenting on builds
- Test statistics
And more I havn’t checked out yet… For some weird reason I don’t get the Fitnesse hangs either. I have been testing it for a while now, and we will change over on monday. Highly recommended.
I should also look into the other build servers like TeamCity that offer a slightly different take on things. I saw it was released with Eclipse support now. Any experiences out there?
Maven guide online
I feel fairly proficient at Maven now after configuring and tweaking our build environment, but it is good to have some resources to back you up. There’s a guide out here, that should explain most aspects. I havn’t really read much of it, but it should be alright.