This project is deprecated and will be decommissioned soon. If you're using Buildhub, please migrate to Buildhub2.
Buildhub aims to provide a public database of comprehensive information about releases and builds.
- Install Docker
- To run tests:
make test
- To lint check Python code:
make lintcheck
We use CircleCI for all continous integration.
There are a few pieces to Buildhub.
Generate a new lambda.zip
file by running:
rm lambda.zip
make lambda.zip
This runs a script inside a Docker container to generate the lambda.zip
file.
You need to have write access to github.com/mozilla-services/buildhub
.
You need a GitHub Personal Access Token
with repos
scope. This is to generate GitHub Releases and upload assets
to them.
Create a Python virtual environment and install "requests" and "python-decouple" into it.
Run ./bin/make-release.py
. You need to set the GITHUB_API_KEY
environment
variable. You need to specify the "type" of the release as a command-line
argument. 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')
Then do this in your Python virtual environment:
$ GITHUB_API_KEY=895f...ce09 ./bin/make-release.py minor
This will bump the version in setup.py
, update the CHANGELOG.rst
and
make a tag and push that tag to GitHub.
Then, it will create a Release and upload the latest lambda.zip
as an
attachment to that Release.
You 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/deployment-bug.py stage-lambda
To upgrade the cron job and Lambda job on Prod run:
./bin/deployment-bug.py prod
Install yarn.
Then run:
$ cd ui
$ yarn install
$ yarn run build
$ rimraf tmp
$ mkdir tmp
$ cp -R build/* tmp/
$ gh-pages -d tmp --add
Note: This only deploys a ui that connects to prod kinto--it doesn't deploy a ui that connects to the stage kinto.