Title: [246609] trunk/Tools
- Revision
- 246609
- Author
- [email protected]
- Date
- 2019-06-19 13:49:07 -0700 (Wed, 19 Jun 2019)
Log 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.
Modified Paths
Diff
Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps.py (246608 => 246609)
--- trunk/Tools/BuildSlaveSupport/ews-build/steps.py 2019-06-19 20:34:30 UTC (rev 246608)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps.py 2019-06-19 20:49:07 UTC (rev 246609)
@@ -617,7 +617,7 @@
def evaluateCommand(self, cmd):
if cmd.didFail():
self.setProperty('patchFailedToBuild', True)
- self.build.addStepsAfterCurrentStep([UnApplyPatchIfRequired(), CompileWebKitToT()])
+ self.build.addStepsAfterCurrentStep([UnApplyPatchIfRequired(), CompileWebKitToT(), AnalyzeCompileWebKitResults()])
else:
self.build.addStepsAfterCurrentStep([ArchiveBuiltProduct(), UploadBuiltProduct(), TransferToS3()])
@@ -626,7 +626,7 @@
class CompileWebKitToT(CompileWebKit):
name = 'compile-webkit-tot'
- haltOnFailure = True
+ haltOnFailure = False
def doStepIf(self, step):
return self.getProperty('patchFailedToBuild') or self.getProperty('patchFailedAPITests')
@@ -638,6 +638,35 @@
return shell.Compile.evaluateCommand(self, cmd)
+class AnalyzeCompileWebKitResults(buildstep.BuildStep):
+ name = 'analyze-compile-webkit-results'
+ description = ['analyze-compile-webkit-results']
+ descriptionDone = ['analyze-compile-webkit-results']
+
+ def start(self):
+ compile_webkit_tot_result = self.getStepResult(CompileWebKitToT.name)
+
+ if compile_webkit_tot_result == FAILURE:
+ self.finished(FAILURE)
+ message = 'Unable to build WebKit without patch, retrying build'
+ self.descriptionDone = message
+ self.build.buildFinished([message], RETRY)
+ return defer.succeed(None)
+
+ self.finished(FAILURE)
+ self.build.results = FAILURE
+ message = 'Patch does not build'
+ self.descriptionDone = message
+ self.build.buildFinished([message], FAILURE)
+
+ return defer.succeed(None)
+
+ def getStepResult(self, step_name):
+ for step in self.build.executedSteps:
+ if step.name == step_name:
+ return step.results
+
+
class CompileJSCOnly(CompileWebKit):
name = 'build-jsc'
descriptionDone = ['Compiled JSC']
Modified: trunk/Tools/ChangeLog (246608 => 246609)
--- trunk/Tools/ChangeLog 2019-06-19 20:34:30 UTC (rev 246608)
+++ trunk/Tools/ChangeLog 2019-06-19 20:49:07 UTC (rev 246609)
@@ -1,5 +1,19 @@
2019-06-19 Aakash Jain <[email protected]>
+ [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.
+
+2019-06-19 Aakash Jain <[email protected]>
+
[ews-build] Send email notifications for failures
https://bugs.webkit.org/show_bug.cgi?id=198919
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes