Changeset 244532 in webkit
- Timestamp:
- Apr 22, 2019 5:16:48 PM (5 years ago)
- Location:
- trunk/Tools
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Tools/BuildSlaveSupport/ews-build/factories.py
r244021 r244532 22 22 23 23 24 from buildbot.process import factory , properties24 from buildbot.process import factory 25 25 from buildbot.steps import trigger 26 26 27 27 from steps import * 28 28 29 Property = properties.Property30 31 29 32 30 class Factory(factory.BuildFactory): 33 def __init__(self, platform, configuration=None, architectures=None, buildOnly=True, additionalArguments=None, checkRelevance=False, **kwargs):31 def __init__(self, platform, configuration=None, architectures=None, buildOnly=True, triggers=None, additionalArguments=None, checkRelevance=False, **kwargs): 34 32 factory.BuildFactory.__init__(self) 35 self.addStep(ConfigureBuild(platform, configuration, architectures, buildOnly, additionalArguments))33 self.addStep(ConfigureBuild(platform, configuration, architectures, buildOnly, triggers, additionalArguments)) 36 34 if checkRelevance: 37 35 self.addStep(CheckPatchRelevance()) … … 67 65 68 66 class BuildFactory(Factory): 69 def __init__(self, platform, configuration=None, architectures=None, additionalArguments=None, triggers=None, **kwargs):70 Factory.__init__(self, platform, configuration, architectures, False, additionalArguments)67 def __init__(self, platform, configuration=None, architectures=None, triggers=None, additionalArguments=None, **kwargs): 68 Factory.__init__(self, platform, configuration, architectures, False, triggers, additionalArguments) 71 69 self.addStep(KillOldProcesses()) 72 70 self.addStep(CompileWebKit()) 73 if triggers:74 self.addStep(trigger.Trigger(schedulerNames=triggers, set_properties=self.propertiesToPassToTriggers() or {}))75 76 def propertiesToPassToTriggers(self):77 return {78 "patch_id": Property("patch_id"),79 "bug_id": Property("bug_id"),80 "configuration": Property("configuration"),81 "platform": Property("platform"),82 "fullPlatform": Property("fullPlatform"),83 "architecture": Property("architecture"),84 "owner": Property("owner"),85 }86 71 87 72 -
trunk/Tools/BuildSlaveSupport/ews-build/steps.py
r244504 r244532 24 24 from buildbot.process import buildstep, logobserver, properties 25 25 from buildbot.process.results import Results, SUCCESS, FAILURE, WARNINGS, SKIPPED, EXCEPTION, RETRY 26 from buildbot.steps import master, shell, transfer 26 from buildbot.steps import master, shell, transfer, trigger 27 27 from buildbot.steps.source import git 28 28 from buildbot.steps.worker import CompositeStepMixin … … 44 44 descriptionDone = ["Configured build"] 45 45 46 def __init__(self, platform, configuration, architectures, buildOnly, additionalArguments):46 def __init__(self, platform, configuration, architectures, buildOnly, triggers, additionalArguments): 47 47 super(ConfigureBuild, self).__init__() 48 48 self.platform = platform … … 53 53 self.architecture = " ".join(architectures) if architectures else None 54 54 self.buildOnly = buildOnly 55 self.triggers = triggers 55 56 self.additionalArguments = additionalArguments 56 57 … … 66 67 if self.buildOnly: 67 68 self.setProperty("buildOnly", self.buildOnly, 'config.json') 69 if self.triggers: 70 self.setProperty('triggers', self.triggers, 'config.json') 68 71 if self.additionalArguments: 69 72 self.setProperty("additionalArguments", self.additionalArguments, 'config.json') … … 384 387 385 388 389 class Trigger(trigger.Trigger): 390 def __init__(self, schedulerNames, **kwargs): 391 set_properties = self.propertiesToPassToTriggers() or {} 392 super(Trigger, self).__init__(schedulerNames=schedulerNames, set_properties=set_properties, **kwargs) 393 394 def propertiesToPassToTriggers(self): 395 return { 396 'patch_id': properties.Property('patch_id'), 397 'bug_id': properties.Property('bug_id'), 398 'configuration': properties.Property('configuration'), 399 'platform': properties.Property('platform'), 400 'fullPlatform': properties.Property('fullPlatform'), 401 'architecture': properties.Property('architecture'), 402 'owner': properties.Property('owner'), 403 } 404 405 386 406 class TestWithFailureCount(shell.Test): 387 407 failedTestsFormatString = "%d test%s failed" … … 674 694 kwargs['blocksize'] = 1024 * 256 675 695 transfer.FileUpload.__init__(self, **kwargs) 696 697 def finished(self, results): 698 if results == SUCCESS: 699 triggers = self.getProperty('triggers', None) 700 if triggers: 701 self.build.addStepsAfterCurrentStep([Trigger(schedulerNames=triggers)]) 702 703 return super(UploadBuiltProduct, self).finished(results) 676 704 677 705 -
trunk/Tools/ChangeLog
r244529 r244532 1 2019-04-22 Aakash Jain <aakash_jain@apple.com> 2 3 [ews-build] Trigger queues only after uploading the archive 4 https://bugs.webkit.org/show_bug.cgi?id=197180 5 6 Reviewed by Lucas Forschler. 7 8 * BuildSlaveSupport/ews-build/factories.py: 9 (Factory.__init__): 10 (BuildFactory.__init__): Remove trigger step from factories. 11 (BuildFactory.propertiesToPassToTriggers): Deleted. 12 * BuildSlaveSupport/ews-build/steps.py: 13 (ConfigureBuild.__init__): Confiure triggers property. 14 (Trigger): Step to trigger other queues. 15 (Trigger.propertiesToPassToTriggers): Method to construct properties to pass to triggerred builds. 16 (UploadBuiltProduct.finished): Trigger builds after upload is successful. 17 1 18 2019-04-22 Alex Christensen <achristensen@webkit.org> 2 19
Note: See TracChangeset
for help on using the changeset viewer.