Package buildbot :: Module scheduler :: Class AnyBranchScheduler
[frames] | no frames]

Class AnyBranchScheduler

source code

 twisted.application.service.Service --+            
                                       |            
twisted.application.service.MultiService --+        
                                           |        
                    util.ComparableMixin --+        
                                           |        
                               BaseScheduler --+    
                                               |    
                           BaseUpstreamScheduler --+
                                                   |
                                                  AnyBranchScheduler

This Scheduler will handle changes on a variety of branches. It will accumulate Changes for each branch separately. It works by creating a separate Scheduler for each new branch it sees.

Nested Classes
  schedulerFactory
The default Scheduler class will run a build after some period of time called the treeStableTimer, on a given set of Builders.
Instance Methods
 
__init__(self, name, branches, treeStableTimer, builderNames, fileIsImportant=None, properties={}, categories=None) source code
 
__repr__(self) source code
 
listBuilderNames(self) source code
 
getPendingBuildTimes(self) source code
 
buildSetFinished(self, bss) source code
 
addChange(self, change) source code

Inherited from BaseUpstreamScheduler: submitBuildSet, subscribeToSuccessfulBuilds, unsubscribeToSuccessfulBuilds

Inherited from twisted.application.service.MultiService: __iter__, addService, getServiceNamed, privilegedStartService, removeService, startService, stopService

Inherited from twisted.application.service.Service: __getstate__, __providedBy__, disownServiceParent, setName, setServiceParent

Inherited from util.ComparableMixin: __cmp__, __hash__

Class Variables
  fileIsImportant = None
hash(x)
  compare_attrs = ('name', 'branches', 'treeStableTimer', 'build...

Inherited from BaseUpstreamScheduler: __implemented__, __provides__

Inherited from twisted.application.service.Service: parent, running

Instance Variables

Inherited from BaseScheduler: name, properties

Method Details

__init__(self, name, branches, treeStableTimer, builderNames, fileIsImportant=None, properties={}, categories=None)
(Constructor)

source code 
Parameters:
  • name - the name of this Scheduler
  • branches - The branch names that the Scheduler should pay attention to. Any Change that is not in one of these branches will be ignored. It can be set to None to accept changes from any branch. Don't use [] (an empty list), because that means we don't pay attention to *any* branches, so we'll never build anything.
  • treeStableTimer - the duration, in seconds, for which the tree must remain unchanged before a build is triggered. This is intended to avoid builds of partially-committed fixes.
  • builderNames - a list of Builder names. When this Scheduler decides to start a set of builds, they will be run on the Builders named by this list.
  • fileIsImportant - A callable which takes one argument (a Change instance) and returns True if the change is worth building, and False if it is not. Unimportant Changes are accumulated until the build is triggered by an important change. The default value of None means that all Changes are important.
  • properties - properties to apply to all builds started from this scheduler
  • categories - A list of categories of changes to accept
Overrides: twisted.application.service.MultiService.__init__

__repr__(self)
(Representation operator)

source code 
Overrides: BaseScheduler.__repr__

buildSetFinished(self, bss)

source code 
Overrides: BaseUpstreamScheduler.buildSetFinished

addChange(self, change)

source code 
Overrides: BaseScheduler.addChange

Class Variable Details

compare_attrs

Value:
('name',
 'branches',
 'treeStableTimer',
 'builderNames',
 'fileIsImportant',
 'properties',
 'categories')