User Tools

Site Tools


continuous_integration:continuous_integration

This is an old revision of the document!


While looking around for automated build systems years ago, I stopped at buildbot - http://buildbot.net/

Buildbot never stopped surprizing me in the good way.

Below is the nextSlave function I'm using, that hopefully will choose the slave with lowest running builds that can acquire the configured slave locks:

def getNbOfActiveBuilders(slaveBuilders):
   active_builders = [sb for sb in slaveBuilders.slave.slavebuilders.values()
                      if sb.isBusy()]

   return len(active_builders)
   

def myNextBuildSlave(builder, slaveBuilders):
   slaveBuilders.sort(key=lambda s: getNbOfActiveBuilders(s))
   for sb in slaveBuilders:
      if builder.canStartWithSlavebuilder(sb): #check locks before
         return sb
   return None
continuous_integration/continuous_integration.1396559093.txt.gz · Last modified: 2014/04/04 00:04 by cipibad