I have to admit, it's been a fair amount of time since I've bothered to get my hands dirty looking at CI. While I've used it on nearly every project I've been on at Avanade, aside from having to set it up once...maybe twice all I've done is instruct other developers to configure it and get it up and running at the start of projects. Well, there was no such luxury for me this time so I got a bit of a crash course in setting things up, particularly related to integrating MSBuild into the process.
The big bottom line is - read the documentation very thoroughly. While the CC.NET documentation is fairly decent, depending on how you read it you can very easily leave out one key configuration item that will cause your web dashboard to absolutely blow up. With that in mind, here's how to get everything working nicely.
Install the Software
Obvious first step...but here's what you need:
Step 1- Install the server component on your build machine and if you'd like, the tray monitor on any PC you want to use to monitor the status of your build.
Step 2 - Copy the MSBuild DLL to the following locations:
C:\Program Files\CruiseControl.NET\server
C:\Program Files\CruiseControl.NET\webdashboard\bin
One more location to be named later...
| Prepare Your Solution to Function With MSBuild |
Many solutions will probably work out of the box, but I'm a stickler for not liking to have warning messages in my build reports.
Step 1 - Remove any of the following projects from your solution file:
- Windows Installer
- SSIS (Integration Services)
- Reporting Services
- Database Projects
Step 2 - Confirm that your solution will build using MSBuild by running the following command:
[TO BE PROVIDED]
Create a Custom MSBuild File
Create an fxCop Project File
Modify the CC.NET Configuration File
Test the Build!