Title: [264830] trunk/Tools
Revision
264830
Author
[email protected]
Date
2020-07-24 09:26:37 -0700 (Fri, 24 Jul 2020)

Log Message

[ews] Notify bot watchers about build being broken
https://bugs.webkit.org/show_bug.cgi?id=214727

Reviewed by Jonathan Bedard.

* BuildSlaveSupport/ews-build/steps.py:
(AnalyzeCompileWebKitResults.start):
(AnalyzeCompileWebKitResults.send_email_for_build_failure):
* BuildSlaveSupport/ews-build/steps_unittest.py:
(TestAnalyzeCompileWebKitResults.setUp):
(TestReRunWebKitTests.configureStep):
(TestAnalyzeLayoutTestsResults.configureStep):

Modified Paths

Diff

Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps.py (264829 => 264830)


--- trunk/Tools/BuildSlaveSupport/ews-build/steps.py	2020-07-24 16:03:45 UTC (rev 264829)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps.py	2020-07-24 16:26:37 UTC (rev 264830)
@@ -1372,6 +1372,7 @@
             self.finished(FAILURE)
             message = 'Unable to build WebKit without patch, retrying build'
             self.descriptionDone = message
+            self.send_email_for_build_failure()
             self.build.buildFinished([message], RETRY)
             return defer.succeed(None)
 
@@ -1394,7 +1395,18 @@
             if step.name == step_name:
                 return step.results
 
+    def send_email_for_build_failure(self):
+        try:
+            builder_name = self.getProperty('buildername', '')
+            build_url = '{}#/builders/{}/builds/{}'.format(self.master.config.buildbotURL, self.build._builderid, self.build.number)
 
+            email_subject = 'Build failure on trunk on {}'.format(builder_name)
+            email_text = 'Failed to build WebKit without patch in {}\n\nBuilder: {}'.format(build_url, builder_name)
+            send_email_to_bot_watchers(email_subject, email_text)
+        except Exception as e:
+            print('Error in sending email for build failure: {}'.format(e))
+
+
 class CompileJSC(CompileWebKit):
     name = 'compile-jsc'
     descriptionDone = ['Compiled JSC']
@@ -1999,7 +2011,7 @@
 
             email_subject = 'Flaky test: {}'.format(test_name)
             email_text = 'Test {} flaked in {}\n\nBuilder: {}'.format(test_name, build_url, builder_name)
-            rc = send_email_to_bot_watchers(email_subject, email_text)
+            send_email_to_bot_watchers(email_subject, email_text)
         except Exception as e:
             print('Error in sending email for flaky failure: {}'.format(e))
 
@@ -2010,7 +2022,7 @@
 
             email_subject = 'Pre-existing test failure: {}'.format(test_name)
             email_text = 'Test {} failed on clean tree run in {}.\nBuilder: {}'.format(test_name, build_url, builder_name)
-            rc = send_email_to_bot_watchers(email_subject, email_text)
+            send_email_to_bot_watchers(email_subject, email_text)
         except Exception as e:
             print('Error in sending email for pre-existing failure: {}'.format(e))
 

Modified: trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py (264829 => 264830)


--- trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py	2020-07-24 16:03:45 UTC (rev 264829)
+++ trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py	2020-07-24 16:26:37 UTC (rev 264830)
@@ -1066,6 +1066,7 @@
 class TestAnalyzeCompileWebKitResults(BuildStepMixinAdditions, unittest.TestCase):
     def setUp(self):
         self.longMessage = True
+        AnalyzeCompileWebKitResults.send_email_for_build_failure = lambda self: None
         return self.setUpBuildStep()
 
     def tearDown(self):
@@ -1740,7 +1741,7 @@
         self.setupStep(ReRunWebKitTests())
         self.property_exceed_failure_limit = 'second_results_exceed_failure_limit'
         self.property_failures = 'second_run_failures'
-        ReRunWebKitTests.send_email_for_flaky_failure = lambda subject, test: None
+        ReRunWebKitTests.send_email_for_flaky_failure = lambda self, test: None
 
     def test_flaky_failures_in_first_run(self):
         self.configureStep()
@@ -1889,8 +1890,8 @@
         return self.tearDownBuildStep()
 
     def configureStep(self):
-        AnalyzeLayoutTestsResults.send_email_for_flaky_failure = lambda subject, test: None
-        AnalyzeLayoutTestsResults.send_email_for_pre_existing_failure = lambda subject, test: None
+        AnalyzeLayoutTestsResults.send_email_for_flaky_failure = lambda self, test: None
+        AnalyzeLayoutTestsResults.send_email_for_pre_existing_failure = lambda self, test: None
         self.setupStep(AnalyzeLayoutTestsResults())
         self.setProperty('first_results_exceed_failure_limit', False)
         self.setProperty('second_results_exceed_failure_limit', False)

Modified: trunk/Tools/ChangeLog (264829 => 264830)


--- trunk/Tools/ChangeLog	2020-07-24 16:03:45 UTC (rev 264829)
+++ trunk/Tools/ChangeLog	2020-07-24 16:26:37 UTC (rev 264830)
@@ -1,3 +1,18 @@
+2020-07-24  Aakash Jain  <[email protected]>
+
+        [ews] Notify bot watchers about build being broken
+        https://bugs.webkit.org/show_bug.cgi?id=214727
+
+        Reviewed by Jonathan Bedard.
+
+        * BuildSlaveSupport/ews-build/steps.py:
+        (AnalyzeCompileWebKitResults.start):
+        (AnalyzeCompileWebKitResults.send_email_for_build_failure):
+        * BuildSlaveSupport/ews-build/steps_unittest.py:
+        (TestAnalyzeCompileWebKitResults.setUp):
+        (TestReRunWebKitTests.configureStep):
+        (TestAnalyzeLayoutTestsResults.configureStep):
+
 2020-07-24  Xabier Rodriguez Calvar  <[email protected]>
 
         [GStreamer] gst_buffer_unmap: assertion 'GST_IS_BUFFER (buffer)' failed
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to