Personal builds to ease the cross-platform pain

Jason has an interesting post up over at a little madness on the new “personal builds” feature in Pulse.

By way of background, I used to work with Jason at Sensory Networks before he departed to found zutubi and work on Pulse full time. We used Pulse at Sensory to do our builds and I liked it- I prefer it to Cruise Control, the other CI tool I’ve used.

The part that got my attention was this:

Personal builds allow individual developers to submit their changes to Pulse for testing before committing to version control. Pulse does a build and test of the latest version with the developer’s changes applied … personal builds also allow other powerful usage patterns, such as using the distributed building features of Pulse to test across multiple platforms before checking in.

Hot damn! This sounds great. At Sensory, we supported multiple Linux distros and it was quite annoying how often a change that worked fine on Debian broke the RHEL build, or vice versa. Of course, all changes broke the Redhat 9 build, it’s part of the license agreement.

At my current employer we also do builds on multiple platforms, and it’s not much more fun that it was at Sensory.

Ideally you would build and test on all platforms before committing a change, but the time to do this is prohibitive- a couple of hours, at least. Being able to automatically test builds on all platforms before checkin would get round the cross-platform build problem.