Changeset 246609 in webkit


Ignore:
Timestamp:
Jun 19, 2019 1:49:07 PM (5 years ago)
Author:
aakash_jain@apple.com
Message:

[ews-build] Add step to analyze Compile WebKit failures
https://bugs.webkit.org/show_bug.cgi?id=199025

Reviewed by Jonathan Bedard.

  • BuildSlaveSupport/ews-build/steps.py:

(CompileWebKit.evaluateCommand): Add AnalyzeCompileWebKitResults step.
(CompileWebKitToT): set haltOnFailure to False since we need to run AnalyzeCompileWebKitResults step.
(AnalyzeCompileWebKitResults): Class to analyze compile webkit steps results.
(AnalyzeCompileWebKitResults.start): If ToT fails to build, retry the build, else marked the build as failed. Note that
this step is run only when compile-webkit failed.

Location:
trunk/Tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/BuildSlaveSupport/ews-build/steps.py

    r246497 r246609  
    618618        if cmd.didFail():
    619619            self.setProperty('patchFailedToBuild', True)
    620             self.build.addStepsAfterCurrentStep([UnApplyPatchIfRequired(), CompileWebKitToT()])
     620            self.build.addStepsAfterCurrentStep([UnApplyPatchIfRequired(), CompileWebKitToT(), AnalyzeCompileWebKitResults()])
    621621        else:
    622622            self.build.addStepsAfterCurrentStep([ArchiveBuiltProduct(), UploadBuiltProduct(), TransferToS3()])
     
    627627class CompileWebKitToT(CompileWebKit):
    628628    name = 'compile-webkit-tot'
    629     haltOnFailure = True
     629    haltOnFailure = False
    630630
    631631    def doStepIf(self, step):
     
    637637    def evaluateCommand(self, cmd):
    638638        return shell.Compile.evaluateCommand(self, cmd)
     639
     640
     641class AnalyzeCompileWebKitResults(buildstep.BuildStep):
     642    name = 'analyze-compile-webkit-results'
     643    description = ['analyze-compile-webkit-results']
     644    descriptionDone = ['analyze-compile-webkit-results']
     645
     646    def start(self):
     647        compile_webkit_tot_result = self.getStepResult(CompileWebKitToT.name)
     648
     649        if compile_webkit_tot_result == FAILURE:
     650            self.finished(FAILURE)
     651            message = 'Unable to build WebKit without patch, retrying build'
     652            self.descriptionDone = message
     653            self.build.buildFinished([message], RETRY)
     654            return defer.succeed(None)
     655
     656        self.finished(FAILURE)
     657        self.build.results = FAILURE
     658        message = 'Patch does not build'
     659        self.descriptionDone = message
     660        self.build.buildFinished([message], FAILURE)
     661
     662        return defer.succeed(None)
     663
     664    def getStepResult(self, step_name):
     665        for step in self.build.executedSteps:
     666            if step.name == step_name:
     667                return step.results
    639668
    640669
  • trunk/Tools/ChangeLog

    r246607 r246609  
     12019-06-19  Aakash Jain  <aakash_jain@apple.com>
     2
     3        [ews-build] Add step to analyze Compile WebKit failures
     4        https://bugs.webkit.org/show_bug.cgi?id=199025
     5
     6        Reviewed by Jonathan Bedard.
     7
     8        * BuildSlaveSupport/ews-build/steps.py:
     9        (CompileWebKit.evaluateCommand): Add AnalyzeCompileWebKitResults step.
     10        (CompileWebKitToT): set haltOnFailure to False since we need to run AnalyzeCompileWebKitResults step.
     11        (AnalyzeCompileWebKitResults): Class to analyze compile webkit steps results.
     12        (AnalyzeCompileWebKitResults.start): If ToT fails to build, retry the build, else marked the build as failed. Note that
     13        this step is run only when compile-webkit failed.
     14
    1152019-06-19  Aakash Jain  <aakash_jain@apple.com>
    216
Note: See TracChangeset for help on using the changeset viewer.