This page is about Launchpad's continuous integration system.

Tarmac Merge Machinery

Operator's Guide

Developer Notes

Bug tracking

While the implementation project is in progress, please tag all bugs with merge-machinery-story.

When the project is complete, please tag all bugs with build-infrastructure.

How do I fix a bug in Launchpad's Tarmac?

We maintain a fork of the Tarmac project for our own use at lp:~launchpad/tarmac/lp-tarmac. You will have to modify the fork if you want to make changes to Tarmac or our in-house Tarmac bundle-merge command.

To patch and deploy the Tarmac sources:

  1. bzr branch lp:~launchpad/tarmac/lp-tarmac

  2. Make your changes
  3. Make sure the test suite passes.
    • Optionally, you may also want to test your changes with a throwaway branch and throwaway branch config

  4. Use your shiny new Tarmac to land your own code: tarmac merge lp:~launchpad/tarmac/lp-tarmac

  5. Go to the packaging recipe and click on the "Request build(s)" link to request a build on Lucid for the Launchpad team PPA. (This takes around 90 minutes to complete.)

  6. Ask a LOSA to deploy the new package to sapote. They will modify the version string and deploy it using their own tools. (Again, takes around 90 minutes.)

  7. If you have not already done so, clean up your changes and propose them for merging into the Tarmac project upstream.

How do I modify Tarmac's commit message checking plugin, or other Launchpad Tarmac configuration?

The commit message checking plugin and the other configuration files live outside of the tarmac package itself, in a branch at lp:lp-tarmac-config. The plugin has to be modified and installed separately from the Tarmac source code.

To patch and deploy the plugin:

  1. bzr branch lp:lp-tarmac-config

  2. Make your changes
  3. Push your changes back to lp:lp-tarmac-config

  4. Ask a LOSA to copy the lpcommit.py file from lp:lp-tarmac-config into ~/.config/tarmac/plugins on sapote.

Do the same for other similar files.

TarmacMergeMachinery (last edited 2011-01-12 01:09:08 by mars)