Using CCTray to Monitor Jenkins Builds

If you’re using Jenkins as your Continuous Build platform, but would like to have a tray icon a la Cruise Control or TeamCity, it is still possible!  The Jenkins folks have provided a compatibility option for CCTray that will provide you with build status and the ability to go to the build website, although most of the other functionality doesn’t work (such as forcing a build from CCTray).

For those not familiar with CCTray, it’s a little Windows app that shows a red/green/yellow status icon in your system tray representing your current build(s) status. It will also provide balloon notifications on build success/failure.

If you open the app by double-clicking the icon, you get the full build list:

So, how do you set this up?

First, install CCTray.Net from here: http://sourceforge.net/projects/ccnet/files/CruiseControl.NET%20Releases/ (you’ll want to click the newest version link and find the CCTray-specific installer).

Then, from the CCTray application, go to File -> Settings, select the “Build Projects” tab and click “Add”:

On the next screen click “Add Server”

Now, here’s the special sauce:

For the Build Server, select the “Supply a custom HTTP URL” option and enter the URL for your Jenkins server, followed by “/cc.xml”.  This is a special file generated by Jenkins to support Cruise Control monitoring.  And, for an extra benefit, if you have custom filtered views in Jenkins, you can use those too. Say, for instance, you have just your nightly builds in a view called “Nightly”, when you go to that view/tab in Jenkins, the URL will be something like “http://jenkinsServer/view/Nightly”, so just enter “http://jenkinsServer/view/Nightly/cc.xml” to only monitor those builds in the view.

After clicking OK, the next window will allow you to select which specific builds you want to monitor. Select them and click “OK”.  And, you’re done!