[Buildbot-devel] Using "buildslave info" to guide Builds
    Jared Grubb 
    jared.grubb at gmail.com
       
    Thu Aug 22 19:32:29 UTC 2013
    
    
  
Recently in master (after 0.8.8), we added a buildslave database to hold information about buildslave; this lets, for example, the master show the version/host/accessurl of a buildslave even if it is offline.
One of my hopes for this feature was to provide a place to persist arbitrary information about buildslaves. I have finally gotten around to making this work and it has the following components: 
 * a "setSlaveInfo(**kwargs)" function that a buildstep can use to update a key-value pair for its chosen slave
 * a SetSlaveInfo buildstep to parallel SetProperty; this provides a simple step whose purpose is to update a key
 * update the Buildslave web status page to show a table similar to the "build properties" table on a Build page, but populated with the slave info dictionary
 * ability to populate a drop-down box on ForceScheduler to show the current options
 * canStartBuild to make sure a slave is chosen that can fulfill the selection
What do you think? Any thoughts? I have implemented the above on my buildbot, and it's working great
For an idea of what this is for:  I get a daily SDK drop, and need to install multiple SDKs on each of our bots. Then, I build our code project against one of these SDKs. The default one changes a few times a week, but sometimes there are build dependencies that require us to build against a particular day's SDK different from the default. So, I keep ~10 SDK versions installed per buildslave.
    
    
More information about the devel
mailing list