CCMenu logo

CCMenu

CCMenu displays the build status of projects on a continuous integration server as an item in the Mac's menu bar. Or in other words, CCMenu is to OS X what CCTray is to Windows.

CCMenu allows you to:

CCMenu works with CruiseControl, and with CircleCI, GreenhouseCI, Jenkins, Snap CI, TeamCity, ThoughtWorks Go, and Travis CI. It should also work with any continuous integration server that can provide status in the “cctray” XML format.

Go to download Report an issue

The menu

The summary icon in the menu bar and the icons for the individual projects in the menu convey information about the project status:

The most recent build was successful
The most recent build failed
The project is building, previous build was successful
The project is building, previous build was broken
The project is disabled or waiting for a build agent
The server or project status are unavailable

Clicking on a project in the menu opens the project's web page in the default web browser. Depending on the continuous integration server this can be a project overview page, or a page with details about the last build.

Notifications

CCMenu sends notifications when a build has completed. Depending on the previous build status and the result of the current build, it will send one of the following notifications:

  • Build successful
  • Build broken (previous build successful, current failed)
  • Build still broken (previous and current build failed)
  • Build fixed (previous build failed, current build successful)

Older versions of CCMenu, for OS X Lion and earlier, use Growl to send notifications.

Project window

The project window shows more detailed information about each of the projects, including last build time and build label. Note that you can rearrange the columns and sort the view by clicking on the column. These setting and the window size and position are persisted accross sessions.

Configuration

Screenshot: CCMenu configuration To add a new project, click on the plus icon below the project list in the preferences panel. In the sheet that opens type the URL of the server into the text field or select an existing server from the drop down list.

You can enter just the hostname or parts of the URL and CCMenu will then try various common locations for the CCTray feed. If your server has a custom configuration you may have to enter the full URL for the feed.

If you are using Travis CI please enter a URL of this form:
https://api.travis-ci.org/repositories/{user}/{repo}/cc.xml

You can drag the projects in the list to arrange the order in which they are displayed. Alternatively you can choose to have the projects sorted alphabetically or by last build time. Note, that the preference to sort the projects only affects the menu, not the project list in preferences.

The preferences window is resizable when the project list is shown.

 

Download

CCMenu is available on the Mac App Store.

Old versions of CCMenu (CCMenu 1.8 and older) can be downloaded from the file archive on SourceForge, where the project was hosted until 2014. Newer versions and pre-releases are available on the Github releases page. These versions do not update automatically and you will not be notified when new versions become available. Unless you have a specific reason please install CCMenu from the App Store.

 

Source code

View the source on Github.

Send bug fixes and changes as pull requests on Github. You can also suggest enhancements.

Credits

Development: Erik Dörnenburg

Contributions: Luke Barrett, Marcus Müller, David Pattinson

Background

Read Martin Fowler's article on Continuous Integration.

Find out more at the ThoughtWorks Continuous Delivery insights channel.