Skip to content
This repository has been archived by the owner on Jun 11, 2019. It is now read-only.

Commit

Permalink
Bug 520227 - fixing merging issues for try builds - now using NoMerge…
Browse files Browse the repository at this point in the history
…Scheduler in misc.py p=lsblakk r=catlee
  • Loading branch information
lsblakk committed Mar 12, 2010
1 parent ebff0e1 commit 3c00c04
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 22 deletions.
13 changes: 9 additions & 4 deletions misc.py
Expand Up @@ -502,15 +502,20 @@ def generateBranchObjects(config, name):


# schedulers # schedulers
# this one gets triggered by the HG Poller # this one gets triggered by the HG Poller
mergeBuilds=config.get('enable_merging', True) extra_args = {}
branchObjects['schedulers'].append(MozScheduler( if config.get('enable_merging'):
schedulerClass = MozScheduler
extra_args['idleTimeout'] = config.get('idle_timeout', None)
else:
schedulerClass = NoMergeScheduler

branchObjects['schedulers'].append(schedulerClass(
name=name, name=name,
branch=config['repo_path'], branch=config['repo_path'],
treeStableTimer=3*60, treeStableTimer=3*60,
idleTimeout=config.get('idle_timeout', None),
builderNames=builders + unittestBuilders + debugBuilders, builderNames=builders + unittestBuilders + debugBuilders,
fileIsImportant=lambda c: isHgPollerTriggered(c, config['hgurl']), fileIsImportant=lambda c: isHgPollerTriggered(c, config['hgurl']),
mergeBuilds=mergeBuilds, **extra_args
)) ))


for scheduler_branch, test_builders, merge in triggeredUnittestBuilders: for scheduler_branch, test_builders, merge in triggeredUnittestBuilders:
Expand Down
20 changes: 2 additions & 18 deletions scheduler.py
Expand Up @@ -30,8 +30,7 @@ class MozScheduler(Scheduler):
'fileIsImportant', 'properties', 'idleTimeout') 'fileIsImportant', 'properties', 'idleTimeout')


def __init__(self, name, branch, treeStableTimer, builderNames, def __init__(self, name, branch, treeStableTimer, builderNames,
idleTimeout=None, fileIsImportant=None, mergeBuilds=True, idleTimeout=None, fileIsImportant=None, properties={}):
properties={}):
""" """
@param name: the name of this Scheduler @param name: the name of this Scheduler
@param branch: The branch name that the Scheduler should pay @param branch: The branch name that the Scheduler should pay
Expand All @@ -58,9 +57,6 @@ def __init__(self, name, branch, treeStableTimer, builderNames,
build is triggered by an important change. build is triggered by an important change.
The default value of None means that all The default value of None means that all
Changes are important. Changes are important.
@param mergeBuilds: set to True by default since most schedulers expect merged
builds, if set to false there will be no merging of builds
@param properties: properties to apply to all builds started from this @param properties: properties to apply to all builds started from this
scheduler scheduler
Expand All @@ -87,19 +83,7 @@ def stopTimer(self):
self.idleTimer = None self.idleTimer = None


def fireTimer(self): def fireTimer(self):
if self.mergeBuilds: Scheduler.fireTimer(self)
Scheduler.fireTimer(self)
else:
for change in self.importantChanges:
changes = [change]
if self.unimportantChanges:
changes.extend(self.unimportantChanges)
self.unimportantChanges = []
# submit
ss = NoMergeSourceStamp(changes=changes)
bs = buildset.BuildSet(self.builderNames, ss)
self.submitBuildSet(bs)
self.importantChanges = []
self.setIdleTimer() self.setIdleTimer()


def doIdleBuild(self): def doIdleBuild(self):
Expand Down

0 comments on commit 3c00c04

Please sign in to comment.