Caution
Buildbot no longer supports Python 2.7 on the Buildbot master.
3.8.14. Masters connector¶
- class buildbot.db.masters.MastersConnectorComponent¶
This class handles tracking the buildmasters in a multi-master configuration. Masters “check in” periodically. Other masters monitor the last activity times, and mark masters that have not recently checked in as inactive.
Masters are represented by master dictionaries with the following keys:
id
– the ID of this mastername
– the name of the master (generally of the formhostname:basedir
)active
– true if this master is runninglast_active
– time that this master last checked in (a datetime object)
- findMasterId(name)¶
- Parameters
name (unicode) – name of this master
- Returns
master id via Deferred
Return the master ID for the master with this master name (generally
hostname:basedir
). If such a master is already in the database, this returns the ID. If not, the master is added to the database, withactive=False
, and its ID returned.
- setMasterState(masterid, active)¶
- Parameters
masterid (integer) – the master to check in
active (boolean) – whether to mark this master as active or inactive
- Returns
boolean via Deferred
Mark the given master as active or inactive, returning true if the state actually changed. If
active
is true, thelast_active
time is updated to the current time. Ifactive
is false, then any links to this master, such as schedulers, will be deleted.
- getMaster(masterid)¶
- Parameters
masterid (integer) – the master to check in
- Returns
Master dict or None via Deferred
Get the indicated master.
- getMasters()¶
- Returns
list of Master dicts via Deferred
Get a list of the masters, represented as dictionaries; masters are sorted and paged using generic data query options
- setAllMastersActiveLongTimeAgo()¶
- Returns
None via Deferred
This method is intended to be called by upgrade-master, and will effectively force housekeeping on all masters at next startup. This method is not intended to be called outside of housekeeping scripts.