Notes on Thalia's Continuum-Based Continuous Integration Setup

ISDA Continuum Interface

As of last update (25feb08), the Thalia source code is being continually built by an instance of Apache Continuum running on isda-build1.mit.edu.

Notable Features:

  • Builds are done continually, within a few minutes of any checkin to the Thalia Subversion repository.
  • Basic checkin-time builds of the IME and UI are done separately.
  • An additional build (IME+UI) is done nightly at 4am, and is subsequently deployed to the Thalia development environment, thalia-dev.mit.edu.
  • Email is sent to the thalia-dev on any build failure and subsequent success.
  • The Continuum server has privileged access to the subversion repository, and checks out directly from it.  Once checkin is complete, no further action is necessary by the developer for the build to take place and for eventual deployment to the Thalia development server.
  • The software in use is Apache Continuum.

Some Common Continuum Operations and How to Do Them:

 In general, the interface is fairly intuitive.  You need to log in to do much of anything (you should have a username and password). 

The main page shows a list of  "Project Groups"; the only relevant one is labelled "thalia builds".  Click on that and you get to see a listing of the two actual projects in that project group, "thalia" (the IME) and "thalia-ui" (the UI).

Clicking on either of those will show you the defined builds.  For the UI, there's just one which runs continually, while the IME has both the continuous regular build and the nightly deploy build.  The maven targets invoked are in the "Goals" column of the build listing.  The right-hand edge of the build definition line has three icons which aren't very clear but have useful mouseovers; the middle one is "edit" which will take you to yet another screen where you can see the details of the build.

 Also quite useful is the "Builds" tap on the top section of the screen once you're looking at a project page.  You can see the history of builds and the result, and examine log files.  Be careful looking at the "Result" page, as the default link is the "Delete" button, and there's no confirmation requested before blowing away the build report.

Note that we expect to transition our build server to the [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] technology in early 2008, for better integration with our wiki and Jira installation; it is expected to provide all of the same functionality and more.

  • No labels