Mini-Lab

These past two weeks I've been working on setting up the Mini-Lab for the Smart Client project I'm working on.  The Mini-Lab is a simple, lightweight service for running rolling (continuous integration) builds, nightly suites and to build nightly drops and up-to-date installer.  It requires only one machine (that sits in my office), and now that it's set up, it is easily maintained. 

One of the features I like most about the Mini-Lab is the rolling build feature, which checks for check-ins every fifteen minutes.  If it finds a new changelist, it runs a task that builds the project and runs test suites.  If the build or tests fail, it sends out an email to the team.  This helps prevent build breaks and regressions as soon as the code is checked in.