Upgrading CruiseControl.NET from 1.0 to 1.1
October 11th, 2006On October 1 a new release of CruiseControl.NET was posted. See the release notes for changes. Since I had strange problems with my automated builds I felt it was time to upgrade.
I dug around and could not find upgrade instructions. The release notes do explain that the new version will not work with the older CCTray, otherwise it appears the configuration is still compatible. Knowing that, we can start the upgrade.
- Backup ccnet.config in the server folder
- Stop the CCNet Windows Service
- Uninstall CCNet 1.0 using Add/Remove Programs from the Control Panel
- Ensure that the ccnet virtual directory has been removed from the IIS configuration for the Default Website
- Run the CCNet 1.1 installer
- Copy ccnet.config back into place (i.e.
C:\Program Files\CruiseControl.NET\server) - Start the CCNet Windows Service
If your ccnet.config is calling the MSBuild task you will likely need a dependency, ThoughtWorks.CruiseControl.MSBuild.dll. You can download it from ccnetlive. Download that file and put it where it was before. I have mine in the server folder.
Next you need to upgrade CCTray on the development systems so they can talk to the new server. From each development system, simply visit the updated CCNet website and click on the link in the upper left corner for the CCTray download. There is no need to uninstall the previous version. Just run the installer.
Finally, I had originally left the CCNet website stay at the default location as a virtual directory on the Default Website for IIS. This time I moved it to a subdomain, such as ccnet.mydomain.com. That will come in handy when I decide to move my build server off the same server as my source control system. My current setup looks like this...
- server1.mydomain.com (actual server)
- svn.mydomain.com (hostname)
- ccnet.mydomain.com (hostname)
Later I could change I put another server in place and migrate CCNet over to that server without affecting the developers.
- server1.mydomain.com (actual server)
- svn.mydomain.com (hostname)
- server2.mydomain.com (actual server)
- ccnet.mydomain.com (hostname)
I suggest everyone do the same. To set up the new website location you simply have to point it to the web dashboard folder (C:\Program Files\CruiseControl.NET\webdashboard) and turn off anonymous access. I also turn off logging and indexing as they are completely unnecessary for this site.
Finally, you may want to update your existing projects with new features available in 1.1. They appear to be optional, but one of them may be just what you needed.
Now you should be all set. Get back to work!
