buildbot-worker - worker instances creation, upgrade and management
Buildbot worker instances are located under individual folders in /var/lib/buildbot/workers. This manual explains how to manage them.
To create a new Buildbot worker instance named $NAME, use the following commands:
buildbot-worker create-worker \ /var/lib/buildbot/workers/$NAME <master> <name> <passwd> chown -R buildbot: /var/lib/buildbot/workers/$NAME
After which you may start the worker instance. Depending on the init system you use, this is done differently.
To start the instance:
systemctl start buildbot-worker@$NAME.service
To enable automatic start on boot:
systemctl enable buildbot-worker@$NAME.service
If you want to tune the way the instance is started (e.g., to change the user that runs the process), you may use a systemd drop-in:
mkdir -p /etc/systemd/system/buildbot-worker@$NAME.service.d editor /etc/systemd/system/buildbot-worker@$NAME.service.d/user.conf
With the following contents:
[Service] User=my-user Group=my-group
First, you need to edit /etc/default/buildbot-worker and configure your instance. The syntax is pretty self explanatory, but here is an example:
# 1-enabled, 0-disabled WORKER_ENABLED=1 # short name printed on start/stop WORKER_NAME="$NAME" # user to run worker as WORKER_USER="buildbot" # basedir to worker (absolute path) WORKER_BASEDIR="/var/lib/buildbot/workers/$NAME" # buildbot-worker options WORKER_OPTIONS="" # prefix command, i.e. nice, linux32, dchroot WORKER_PREFIXCMD=""
After which, you may start the instance:
service buildbot-worker start $NAME
By default, it will automatically start on boot.
When installing new versions, each worker instance is automatically restarted. No additional action is required.
upgrade from 0.8.x¶
Since version 0.9.0 of Buildbot "slave"-based terminology is deprecated in favor of "worker"-based terminology.
If you are upgrading from a 0.8.x version, all old buildbot-slave instances in /var/lib/buildbot/slaves must be manually migrated. The simplest way of doing that is to create new workers re-using the same <master>, <name> and <passwd> arguments. See the CREATION section of this manual for more details.
Once migrated, you may safely delete the old "slave" directory:
rm -rf /var/lib/buildbot/slaves/$NAME
Robin Jarry <firstname.lastname@example.org>