https://github.com/python/buildmaster-config
Configuration for buildbot.python.org
https://github.com/python/buildmaster-config
buildbot-configuration
Last synced: 2 months ago
JSON representation
Configuration for buildbot.python.org
- Host: GitHub
- URL: https://github.com/python/buildmaster-config
- Owner: python
- License: mit
- Created: 2017-01-31T03:29:06.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2025-03-25T17:08:58.000Z (2 months ago)
- Last Synced: 2025-03-29T17:12:09.886Z (2 months ago)
- Topics: buildbot-configuration
- Language: Python
- Homepage: https://buildbot.python.org/
- Size: 707 KB
- Stars: 40
- Watchers: 11
- Forks: 58
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# buildmaster-config
[Buildbot](https://buildbot.net/) master configuration for
[buildbot.python.org](http://buildbot.python.org/all/).[](https://travis-ci.org/python/buildmaster-config)
## Private settings
The production server uses /etc/buildbot/settings.yaml configuration file which
contains secrets like the IRC nickname password.## Update requirements
Run locally:
make git-update-requirements
Review updated packages, pay attention to buildbot updates. Create a PR. Merge
the PR. The new venv will be recreated automatically on the server.Upgrading buildbot sometimes requires to run the command:
./venv/bin/buildbot upgrade-master /data/buildbot/master
Make sure that the server is running, and then remove the old virtual environment:
rm -rf old-venv
## Hosting
The buildbot master is hosted on the PSF Infrastructure and is managed via
[salt](https://github.com/python/psf-salt/blob/master/salt/buildbot/init.sls).psycopg2 also requires libpq-dev:
sudo apt-get install libpq-dev
- Backend host address is `buildbot.nyc1.psf.io`.
- The host is behind the PSF HaProxy cluster which is CNAMEd by `buildbot.python.org`.
- Database is hosted on a managed Postgres cluster, including backups.
- Remote backups of `/etc/buildbot/settings.yaml` are taken hourly and retained for 90 days.
- No other state for the buildbot host is backed up!Configurations from this repository are applied from the `master` branch on
a `*/15` cron interval using the `update-master` target in `Makefile`.Python 3.9 is installed manually using ``pyenv`` (which was also installed
manually). Commands to install Python 3.9:pyenv update
pyenv install 3.9.1
pyenv global 3.8.1 3.9.1## Add a worker
The list of workers is stored in `/etc/buildbot/settings.yaml` on the server.
A worker password should be made of 14 characters (a-z, A-Z, 0-9 and special
characters), for example using KeePassX.* Generate a password
* Add the password in `/etc/buildbot/settings.yaml`
* Restart the buildbot server: `make restart-master`Documentation: http://docs.buildbot.net/current/manual/configuration/workers.html#defining-workers