Wednesday, March 26, 2008

Continuous Integration Part II

Yesterday in Part I of this series on Continuous Integration (CI), I laid out six rough requirements regarding CI for a particular project I am working on.  Here is a recap:

  1. Source Control Integration - We are a Subversion shop.  I need to be able to kick-off a CI run with a get from the SVN repository (or at least check that the current bits on the CI server are the latest bits in SVN).

  2. Automated Build with Test - NAnt is our build system.  I need a set of NAnt scripts that will build and smoke test the build.  I need further build verification tests (BVT) to verify the quality of the build.

  3. Integration with Test - Once the project's components are built and verified, I need to integrate the components into major build units and run additional BVT's.

  4. Automated Staging with Test - After Build and Integration run, I need to automatically stage the different systems and do habitat testing (test the systems in a simulation of their natural habitat--the production environment)

  5. Testing - Once the automatons have run and systems pass all automated tests, the human testers come into play.  We are a Mantis shop (can't beat the price).  Bug reports are fed back to developers and the process continues

  6. Deployment - Once quality/calendar/feature bar is reached commensurate with the stated goals of the release, the systems are ready for deployment.  In my case, deployment means pushing out a database, a web site, two Windows services, Microsoft SQL Server Reporting Services reports, and a Windows client application.

I ended off yesterday's post after successfully using Subversion and NAnt to check-out or update the project's source tree from source control.  No we are on to the next requirement...

Build It And They Will Come

<hours pass>

Wow, this has been an adventure.  I am still slogging my way through... Hopefully I will get to writing something up tomorrow!

Update:  After switching between NAnt, MSBuild, back to NAnt, dragging down the latest NAnt bits, and a trillion googles..I have 25+ project in my VS2008 solution--which if I was still in the 2005 product wouldn't have been a problem...   I have successfully built:

image

Outta here!

No comments:

Disclaimer

Content on this site is provided "AS IS" with no warranties and confers no rights. Additionally, all content on this site is my own personal opinion and does not represent my employer's view in any way.