Modified: trunk/Tools/CISupport/ews-build/steps.py (293173 => 293174)
--- trunk/Tools/CISupport/ews-build/steps.py 2022-04-21 16:55:46 UTC (rev 293173)
+++ trunk/Tools/CISupport/ews-build/steps.py 2022-04-21 17:10:24 UTC (rev 293174)
@@ -1779,7 +1779,7 @@
return {'step': 'Failed to close bug {}'.format(self.bug_id)}
def doStepIf(self, step):
- return self.getProperty('bug_id')
+ return self.getProperty('bug_id') and not self.getProperty('is_test_gardening')
def hideStepIf(self, results, step):
return not self.doStepIf(step)
@@ -5125,6 +5125,13 @@
return match.group('id')
return None
+ @classmethod
+ def is_test_gardening(cls, lines):
+ for line in lines:
+ if line.lstrip().startswith('Unreviewed test gardening'):
+ return True
+ return False
+
def evaluateCommand(self, cmd):
rc = super(UpdatePullRequest, self).evaluateCommand(cmd)
@@ -5139,6 +5146,7 @@
bug_id = self.bug_id_from_log(loglines)
if bug_id:
self.setProperty('bug_id', bug_id)
+ self.setProperty('is_test_gardening', self.is_test_gardening(loglines))
user = self.getProperty('github.head.user.login', '')
head = self.getProperty('github.head.ref', '')
Modified: trunk/Tools/CISupport/ews-build/steps_unittest.py (293173 => 293174)
--- trunk/Tools/CISupport/ews-build/steps_unittest.py 2022-04-21 16:55:46 UTC (rev 293173)
+++ trunk/Tools/CISupport/ews-build/steps_unittest.py 2022-04-21 17:10:24 UTC (rev 293174)
@@ -6420,7 +6420,7 @@
self.assertEqual(pr_number, '1234')
self.assertEqual(title, '[Merge-Queue] Add http credential helper')
self.assertEqual(base, 'main')
- self.assertEqual(head, 'HEAD:eng/pull-request-branch')
+ self.assertEqual(head, 'JonWBedard:eng/pull-request-branch')
self.assertEqual(
description,
@@ -6476,10 +6476,71 @@
)
self.expectOutcome(result=SUCCESS, state_string='Updated pull request')
with current_hostname(EWS_BUILD_HOSTNAME):
- return self.runStep()
+ rc = self.runStep()
+ self.assertEqual(self.getProperty('bug_id'), '238553')
+ self.assertEqual(self.getProperty('is_test_gardening'), False)
+ return rc
- def test_success(self):
+ def test_success_gardening(self):
def update_pr(x, pr_number, title, description, base=None, head=None, repository_url=None):
+ self.assertEqual(pr_number, '1234')
+ self.assertEqual(title, '[ macOS wk2 ] some/test/path.html a flaky failure')
+ self.assertEqual(base, 'main')
+ self.assertEqual(head, 'karlrackler:eng/pull-request-branch')
+
+ self.assertEqual(
+ description,
+ '''#### 6a50b47fd71d922f753c06f46917086c839520b
+<pre>
+[ macOS wk2 ] some/test/path.html a flaky failure
+<a href=""
+
+Unreviewed test gardening.
+
+* LayoutTests/platform/mac-wk2/TestExpectations:
+
+Canonical link: <a href=""
+</pre>
+''',
+ )
+
+ return True
+
+ UpdatePullRequest.update_pr = update_pr
+ self.setupStep(UpdatePullRequest())
+ self.setProperty('github.number', '1234')
+ self.setProperty('github.head.user.login', 'karlrackler')
+ self.setProperty('github.head.ref', 'eng/pull-request-branch')
+ self.setProperty('github.base.ref', 'main')
+ self.expectRemoteCommands(
+ ExpectShell(workdir='wkdir',
+ logEnviron=False,
+ timeout=300,
+ command=['git', 'log', '-1', '--no-decorate'])
+ + 0
+ + ExpectShell.log('stdio', stdout='''commit 6a50b47fd71d922f753c06f46917086c839520b
+Author: Karl Rackler <rack...@apple.com>
+Date: Thu Apr 21 00:25:03 2022 +0000
+
+ [ macOS wk2 ] some/test/path.html a flaky failure
+ https://bugs.webkit.org/show_bug.cgi?id=239577
+
+ Unreviewed test gardening.
+
+ * LayoutTests/platform/mac-wk2/TestExpectations:
+
+ Canonical link: https://commits.webkit.org/249833@main
+'''),
+ )
+ self.expectOutcome(result=SUCCESS, state_string='Updated pull request')
+ with current_hostname(EWS_BUILD_HOSTNAME):
+ rc = self.runStep()
+ self.assertEqual(self.getProperty('bug_id'), '239577')
+ self.assertEqual(self.getProperty('is_test_gardening'), True)
+ return rc
+
+ def test_failure(self):
+ def update_pr(x, pr_number, title, description, base=None, head=None, repository_url=None):
return False
UpdatePullRequest.update_pr = update_pr
@@ -6516,6 +6577,7 @@
with current_hostname(EWS_BUILD_HOSTNAME):
rc = self.runStep()
self.assertEqual(self.getProperty('bug_id'), '238553')
+ self.assertEqual(self.getProperty('is_test_gardening'), False)
return rc
Modified: trunk/Tools/ChangeLog (293173 => 293174)
--- trunk/Tools/ChangeLog 2022-04-21 16:55:46 UTC (rev 293173)
+++ trunk/Tools/ChangeLog 2022-04-21 17:10:24 UTC (rev 293174)
@@ -1,5 +1,20 @@
2022-04-21 Jonathan Bedard <jbed...@apple.com>
+ [Merge-Queue] Don't close bugs associated with test gardening
+ https://bugs.webkit.org/show_bug.cgi?id=239604
+ <rdar://problem/92093456>
+
+ Reviewed by Ryan Haddad.
+
+ * CISupport/ews-build/steps.py:
+ (CloseBug.doStepIf): Skip step if we're a test gardening change.
+ (UpdatePullRequest):
+ (UpdatePullRequest.is_test_gardening): Check for "Unreviewed test gardening" in the commit message.
+ (UpdatePullRequest.evaluateCommand):
+ * CISupport/ews-build/steps_unittest.py:
+
+2022-04-21 Jonathan Bedard <jbed...@apple.com>
+
[commits.webkit.org] Disable CORS
https://bugs.webkit.org/show_bug.cgi?id=239607