Skip to content

Buildbot administration

Lars Bergstrom edited this page May 15, 2014 · 106 revisions

Bors

Bors is the service that watches our PRs for approvals and shephards them into the buildbot queue. Its sources are at: https://github.com/graydon/bors

It runs as a cron job.

Buildbot master

Buildbot is the automated system that notices when bors has marked a PR for testing and merge. Its server is: buildbot-master-servo-01.srv.servo.releng.use1.mozilla.com (note: requires Mozilla VPN access). The buildbot sources are in /builds/buildbot/servo1. After you sudo su - servobld, usually make reconfig or make restart is a good first step (the latter will interrupt running builds though).

Build slaves

Their status can be viewed at: http://servo-buildbot.pub.build.mozilla.org/buildslaves

Note that only the Macs are dedicated machines (e.g. servo-lion-r5-001.build.servo.releng.scl3.mozilla.com). The Linux machines are hosted on AWS and are only spun up when a build is being requested (e.g. servo-linux64-ec2-002.build.servo.releng.use1.mozilla.com). They are also subject to demand, as if our current bid price is lower than the going rate, it may be some time before we are allocated a machine.

To figure out a slave hostname, view any build log and find the HOSTNAME environment variable at the top. The cloned source resides in /builds/slave/{linux,mac}/build/, and the actual build resides in the objdir subdirectory.

Log in as root or servobld; there are no individual accounts on slaves.

Handling a build failure related to a Rust upgrade

If there is a failure related to Makefile.backup, which can happen after Rust upgrades on the first time a builder spins up, you can cd /builds/slave/linux/build/objdir && rm -rf *. Also, make sure that /builds/slave/linux/build/rust doesn't exist (the backup rust).

Clone this wiki locally
You can’t perform that action at this time.