⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 267705 in webkit


Ignore:
Timestamp:
Sep 28, 2020, 10:46:39 AM (6 years ago)
Author:
aakash_jain@apple.com
Message:

Notify igalia team about pre-existing test failures and build failures for WPE and GTK queues
https://bugs.webkit.org/show_bug.cgi?id=217052

Reviewed by Jonathan Bedard.

  • BuildSlaveSupport/ews-build/send_email.py:

(send_email_to_bot_watchers): Moved the logic here to determine whether to email igalia folks.

  • BuildSlaveSupport/ews-build/steps.py:

(AnalyzeCompileWebKitResults.send_email_for_preexisting_build_failure): Passed builder_name parameter.
(AnalyzeJSCTestsResults.send_email_for_flaky_failure):
(AnalyzeJSCTestsResults.send_email_for_pre_existing_failure):
(ReRunWebKitTests.send_email_for_flaky_failure):
(AnalyzeLayoutTestsResults.send_email_for_flaky_failure):
(AnalyzeLayoutTestsResults.send_email_for_pre_existing_failure):
(AnalyzeAPITestsResults.send_email_for_flaky_failure):
(AnalyzeAPITestsResults.send_email_for_pre_existing_failure):

  • BuildSlaveSupport/ews-build/steps_unittest.py:

(TestAnalyzeJSCTestsResults.configureStep): Drive-by fix to improve unit-test.

  • BuildSlaveSupport/ews-build/emails.json: Added IGALIA_GTK_WPE_EMAILS. Renamed BOT_WATCHERS_EMAILS to APPLE_BOT_WATCHERS_EMAILS.
  • BuildSlaveSupport/ews-build/email_unittest.py: Updated unit-test.
Location:
trunk/Tools
Files:
6 edited

Legend:

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

    r265817 r267705  
    3737        cwd = os.path.dirname(os.path.abspath(__file__))
    3838        emails = json.load(open(os.path.join(cwd, 'emails.json')))
    39         valid_email_categories = ['ADMIN_EMAILS', 'BOT_WATCHERS_EMAILS', 'EMAIL_IDS_TO_UNSUBSCRIBE']
     39        valid_email_categories = ['ADMIN_EMAILS', 'APPLE_BOT_WATCHERS_EMAILS', 'EMAIL_IDS_TO_UNSUBSCRIBE', 'IGALIA_JSC_TEAM_EMAILS', 'IGALIA_GTK_WPE_EMAILS']
    4040        for category in valid_email_categories:
    4141            self.assertTrue(category in emails.keys())
  • trunk/Tools/BuildSlaveSupport/ews-build/emails.json

    r267492 r267705  
    44      "webkit-ews-bot-watchers@group.apple.com"
    55  ],
    6   "BOT_WATCHERS_EMAILS": [
     6  "APPLE_BOT_WATCHERS_EMAILS": [
    77      "webkit-ews-bot-watchers@group.apple.com"
    88  ],
     
    1010      "jsc32@igalia.com"
    1111  ],
     12  "IGALIA_GTK_WPE_EMAILS": [
     13      "webkit-bot-admin@igalia.com"
     14  ],
    1215  "EMAIL_IDS_TO_UNSUBSCRIBE": ["pnormand@igalia.com"]
    1316}
  • trunk/Tools/BuildSlaveSupport/ews-build/send_email.py

    r267492 r267705  
    3030
    3131FROM_EMAIL = 'ews@webkit.org'
     32IGALIA_JSC_QUEUES_PATTERNS = ['armv7', 'mips', 'i386']
     33IGALIA_GTK_WPE_QUEUES_PATTERNS = ['gtk', 'wpe']
    3234SERVER = 'localhost'
    3335
    3436
    3537def get_email_ids(category):
    36     # Valid categories: 'ADMIN_EMAILS', 'BOT_WATCHERS_EMAILS', 'EMAIL_IDS_TO_UNSUBSCRIBE'
     38    # Valid categories: 'ADMIN_EMAILS', 'APPLE_BOT_WATCHERS_EMAILS', 'EMAIL_IDS_TO_UNSUBSCRIBE' etc.
    3739    try:
    3840        emails = json.load(open('emails.json'))
     
    7981
    8082
    81 def send_email_to_bot_watchers(subject, text, reference=''):
    82     send_email(get_email_ids('BOT_WATCHERS_EMAILS'), subject, text, reference)
    83 
    84 
    85 def send_email_to_igalia_jsc_team(subject, text, reference=''):
    86     send_email(get_email_ids('IGALIA_JSC_TEAM_EMAILS'), subject, text, reference)
     83def send_email_to_bot_watchers(subject, text, builder_name, reference=''):
     84    send_email(get_email_ids('APPLE_BOT_WATCHERS_EMAILS'), subject, text, reference)
     85    if any(pattern in builder_name.lower() for pattern in IGALIA_JSC_QUEUES_PATTERNS):
     86        send_email(get_email_ids('IGALIA_JSC_TEAM_EMAILS'), subject, text, reference)
     87    if any(pattern in builder_name.lower() for pattern in IGALIA_GTK_WPE_QUEUES_PATTERNS):
     88        send_email(get_email_ids('IGALIA_GTK_WPE_EMAILS'), subject, text, reference)
  • trunk/Tools/BuildSlaveSupport/ews-build/steps.py

    r267493 r267705  
    3131
    3232from layout_test_failures import LayoutTestFailures
    33 from send_email import send_email_to_patch_author, send_email_to_bot_watchers, send_email_to_igalia_jsc_team
     33from send_email import send_email_to_patch_author, send_email_to_bot_watchers
    3434
    3535import json
     
    4343EWS_BUILD_URL = 'https://ews-build.webkit.org/'
    4444EWS_URL = 'https://ews.webkit.org/'
    45 IGALIA_JSC_QUEUES_PATTERNS = ['armv7', 'mips', 'i386']
    4645RESULTS_DB_URL = 'https://results.webkit.org/'
    4746WithProperties = properties.WithProperties
     
    15491548                logs = logs.replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;')
    15501549                email_text += u'\n\nError lines:\n\n<code>{}</code>'.format(logs)
    1551             send_email_to_bot_watchers(email_subject, email_text, 'preexisting-build-failure-{}-{}'.format(builder_name, date.today().strftime("%Y-%d-%m")))
    1552             if any(pattern in builder_name.lower() for pattern in IGALIA_JSC_QUEUES_PATTERNS):
    1553                 send_email_to_igalia_jsc_team(email_subject, email_text, 'preexisting-build-failure-{}-{}'.format(builder_name, date.today().strftime("%Y-%d-%m")))
     1550            reference = 'preexisting-build-failure-{}-{}'.format(builder_name, date.today().strftime("%Y-%d-%m"))
     1551            send_email_to_bot_watchers(email_subject, email_text, builder_name, reference)
    15541552        except Exception as e:
    15551553            print('Error in sending email for build failure: {}'.format(e))
     
    18011799            email_subject = u'Flaky test: {}'.format(test_name)
    18021800            email_text = 'Flaky test: {}\n\nBuild: {}\n\nBuilder: {}\n\nWorker: {}\n\nHistory: {}'.format(test_name, build_url, builder_name, worker_name, history_url)
    1803             send_email_to_bot_watchers(email_subject, email_text, 'flaky-{}'.format(test_name))
     1801            send_email_to_bot_watchers(email_subject, email_text, builder_name, 'flaky-{}'.format(test_name))
    18041802        except Exception as e:
    18051803            print('Error in sending email for flaky failure: {}'.format(e))
     
    18141812            email_subject = u'Pre-existing test failure: {}'.format(test_name)
    18151813            email_text = 'Test {} failed on clean tree run in {}.\n\nBuilder: {}\n\nWorker: {}\n\nHistory: {}'.format(test_name, build_url, builder_name, worker_name, history_url)
    1816             send_email_to_bot_watchers(email_subject, email_text, 'preexisting-{}'.format(test_name))
    1817             if any(pattern in builder_name.lower() for pattern in IGALIA_JSC_QUEUES_PATTERNS):
    1818                 send_email_to_igalia_jsc_team(email_subject, email_text, 'preexisting-{}'.format(test_name))
     1814            send_email_to_bot_watchers(email_subject, email_text, builder_name, 'preexisting-{}'.format(test_name))
    18191815        except Exception as e:
    18201816            print('Error in sending email for pre-existing failure: {}'.format(e))
     
    21022098            email_text = 'Test {} flaked in {}\n\nBuilder: {}'.format(test_name, build_url, builder_name)
    21032099            email_text = 'Flaky test: {}\n\nBuild: {}\n\nBuilder: {}\n\nWorker: {}\n\nHistory: {}'.format(test_name, build_url, builder_name, worker_name, history_url)
    2104             send_email_to_bot_watchers(email_subject, email_text, 'flaky-{}'.format(test_name))
     2100            send_email_to_bot_watchers(email_subject, email_text, builder_name, 'flaky-{}'.format(test_name))
    21052101        except Exception as e:
    21062102            # Catching all exceptions here to ensure that failure to send email doesn't impact the build
     
    22112207            email_subject = u'Flaky test: {}'.format(test_name)
    22122208            email_text = 'Flaky test: {}\n\nBuild: {}\n\nBuilder: {}\n\nWorker: {}\n\nHistory: {}'.format(test_name, build_url, builder_name, worker_name, history_url)
    2213             send_email_to_bot_watchers(email_subject, email_text, 'flaky-{}'.format(test_name))
     2209            send_email_to_bot_watchers(email_subject, email_text, builder_name, 'flaky-{}'.format(test_name))
    22142210        except Exception as e:
    22152211            print('Error in sending email for flaky failure: {}'.format(e))
     
    22242220            email_subject = u'Pre-existing test failure: {}'.format(test_name)
    22252221            email_text = 'Test {} failed on clean tree run in {}.\n\nBuilder: {}\n\nWorker: {}\n\nHistory: {}'.format(test_name, build_url, builder_name, worker_name, history_url)
    2226             send_email_to_bot_watchers(email_subject, email_text, 'preexisting-{}'.format(test_name))
     2222            send_email_to_bot_watchers(email_subject, email_text, builder_name, 'preexisting-{}'.format(test_name))
    22272223        except Exception as e:
    22282224            print('Error in sending email for pre-existing failure: {}'.format(e))
     
    26782674            email_subject = u'Flaky test: {}'.format(test_name)
    26792675            email_text = 'Flaky test: {}\n\nBuild: {}\n\nBuilder: {}\n\nWorker: {}\n\nHistory: {}'.format(test_name, build_url, builder_name, worker_name, history_url)
    2680             send_email_to_bot_watchers(email_subject, email_text, 'flaky-{}'.format(test_name))
     2676            send_email_to_bot_watchers(email_subject, email_text, builder_name, 'flaky-{}'.format(test_name))
    26812677        except Exception as e:
    26822678            print('Error in sending email for flaky failure: {}'.format(e))
     
    26912687            email_subject = u'Pre-existing test failure: {}'.format(test_name)
    26922688            email_text = 'Test {} failed on clean tree run in {}.\n\nBuilder: {}\n\nWorker: {}\n\nHistory: {}'.format(test_name, build_url, builder_name, worker_name, history_url)
    2693             send_email_to_bot_watchers(email_subject, email_text, 'preexisting-{}'.format(test_name))
     2689            send_email_to_bot_watchers(email_subject, email_text, builder_name, 'preexisting-{}'.format(test_name))
    26942690        except Exception as e:
    26952691            print('Error in sending email for pre-existing failure: {}'.format(e))
  • trunk/Tools/BuildSlaveSupport/ews-build/steps_unittest.py

    r267052 r267705  
    5353                   UploadTestResults, ValidateCommiterAndReviewer, ValidatePatch)
    5454
    55 import send_email
    56 send_email.BOT_WATCHERS_EMAILS = []
    57 
    5855# Workaround for https://github.com/buildbot/buildbot/issues/4669
    5956from buildbot.test.fake.fakebuild import FakeBuild
     
    14541451        self.setProperty('jsc_clean_tree_stress_test_failures', [])
    14551452        self.setProperty('jsc_clean_tree_binary_failures', [])
     1453        AnalyzeJSCTestsResults.send_email_for_flaky_failure = lambda self, test: None
     1454        AnalyzeJSCTestsResults.send_email_for_pre_existing_failure = lambda self, test: None
    14561455
    14571456    def test_single_new_stress_failure(self):
  • trunk/Tools/ChangeLog

    r267704 r267705  
     12020-09-28  Aakash Jain  <aakash_jain@apple.com>
     2
     3        Notify igalia team about pre-existing test failures and build failures for WPE and GTK queues
     4        https://bugs.webkit.org/show_bug.cgi?id=217052
     5
     6        Reviewed by Jonathan Bedard.
     7
     8        * BuildSlaveSupport/ews-build/send_email.py:
     9        (send_email_to_bot_watchers): Moved the logic here to determine whether to email igalia folks.
     10        * BuildSlaveSupport/ews-build/steps.py:
     11        (AnalyzeCompileWebKitResults.send_email_for_preexisting_build_failure): Passed builder_name parameter.
     12        (AnalyzeJSCTestsResults.send_email_for_flaky_failure):
     13        (AnalyzeJSCTestsResults.send_email_for_pre_existing_failure):
     14        (ReRunWebKitTests.send_email_for_flaky_failure):
     15        (AnalyzeLayoutTestsResults.send_email_for_flaky_failure):
     16        (AnalyzeLayoutTestsResults.send_email_for_pre_existing_failure):
     17        (AnalyzeAPITestsResults.send_email_for_flaky_failure):
     18        (AnalyzeAPITestsResults.send_email_for_pre_existing_failure):
     19        * BuildSlaveSupport/ews-build/steps_unittest.py:
     20        (TestAnalyzeJSCTestsResults.configureStep): Drive-by fix to improve unit-test.
     21        * BuildSlaveSupport/ews-build/emails.json: Added IGALIA_GTK_WPE_EMAILS. Renamed BOT_WATCHERS_EMAILS to APPLE_BOT_WATCHERS_EMAILS.
     22        * BuildSlaveSupport/ews-build/email_unittest.py: Updated unit-test.
     23
    1242020-09-28  Matt Lewis  <jlewis3@apple.com>
    225
Note: See TracChangeset for help on using the changeset viewer.