Mozilla Build Metadata Service
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.



Buildhub aims to provide a public database of comprehensive information about releases and builds.


MPL 2.0


  1. Install Docker
  2. To run tests: make test
  3. To lint check Python code: make lintcheck

Continuous Integration

We use CircleCI for all continous integration.


To make a release you need to have write access to First you have to generate a new file by running:


(This is generated inside Docker).

Then you need a GitHub Personal Access Token with repos scope. This is to generate GitHub Releases and upload assets to them. Next, run ./bin/ The only required parameter is the "type" of the release. The choices are:

  • major (e.g. '2.6.9' to '3.0.0')
  • minor (e.g. '2.6.7' to '2.7.0')
  • patch (e.g. '2.6.7' to '2.6.8')

Like this for example:

GITHUB_API_KEY=895f...ce09 ./bin/ minor

This will bump the version in, update the CHANGELOG.rst and make a tag and push that tag to GitHub.

Then, it will create a Release and upload the latest as an attachment to that Release.


The outlined steps above only upgrade the cron job part of Buildhub. And only for Stage is it automatically upgraded simply by making a new Release.

At the time of writing we still need to file a Bugzilla bug to have the Lambda job upgraded on Stage. Issue #423 is about automating this away.

To upgrade the Lambda job on Stage run:

./bin/ stage-lambda

To upgrade the cron job and Lambda job on Prod run:

./bin/ prod


Buildhub Performance