Diff
Modified: trunk/Tools/CISupport/ews-build/config.json (275306 => 275307)
--- trunk/Tools/CISupport/ews-build/config.json 2021-03-31 21:45:33 UTC (rev 275306)
+++ trunk/Tools/CISupport/ews-build/config.json 2021-03-31 21:48:22 UTC (rev 275307)
@@ -466,7 +466,7 @@
"platform": "mac-catalina",
"configuration": "release",
"architectures": ["x86_64"],
- "triggers": ["api-tests-mac-ews", "macos-catalina-release-wk1-tests-ews", "macos-catalina-release-wk2-tests-ews"],
+ "triggers": ["api-tests-mac-ews", "macos-catalina-release-wk1-tests-ews", "macos-catalina-release-wk2-tests-ews", "macos-release-wk2-stress-tests-ews"],
"workernames": ["ews118", "ews119", "ews120", "ews150"]
},
{
@@ -492,6 +492,17 @@
"workernames": ["ews104", "ews105", "ews106", "ews107"]
},
{
+ "name": "macOS-Release-WK2-Stress-Tests-EWS",
+ "shortname": "mac-wk2-stress",
+ "icon": "testOnly",
+ "factory": "StressTestFactory",
+ "platform": "mac-catalina",
+ "configuration": "release",
+ "architectures": ["x86_64"],
+ "triggered_by": ["macos-catalina-release-build-ews"],
+ "workernames": ["ews151"]
+ },
+ {
"name": "macOS-Catalina-Debug-Build-EWS",
"shortname": "mac-debug",
"icon": "buildOnly",
@@ -775,6 +786,13 @@
},
{
"type": "Triggerable",
+ "name": "macos-release-wk2-stress-tests-ews",
+ "builderNames": [
+ "macOS-Release-WK2-Stress-Tests-EWS"
+ ]
+ },
+ {
+ "type": "Triggerable",
"name": "macos-applesilicon-big-sur-debug-build-ews",
"builderNames": [
"macOS-AppleSilicon-Big-Sur-Debug-Build-EWS"
Modified: trunk/Tools/CISupport/ews-build/factories.py (275306 => 275307)
--- trunk/Tools/CISupport/ews-build/factories.py 2021-03-31 21:45:33 UTC (rev 275306)
+++ trunk/Tools/CISupport/ews-build/factories.py 2021-03-31 21:48:22 UTC (rev 275307)
@@ -26,20 +26,25 @@
from steps import (ApplyPatch, ApplyWatchList, CheckOutSource, CheckOutSpecificRevision, CheckPatchRelevance,
CheckPatchStatusOnEWSQueues, CheckStyle, CompileJSC, CompileWebKit, ConfigureBuild, CreateLocalGITCommit,
- DownloadBuiltProduct, ExtractBuiltProduct, FetchBranches, FindModifiedChangeLogs, InstallGtkDependencies,
- InstallWpeDependencies, KillOldProcesses, PrintConfiguration, PushCommitToWebKitRepo,
+ DownloadBuiltProduct, ExtractBuiltProduct, FetchBranches, FindModifiedChangeLogs, FindModifiedLayoutTests,
+ InstallGtkDependencies, InstallWpeDependencies, KillOldProcesses, PrintConfiguration, PushCommitToWebKitRepo,
RunAPITests, RunBindingsTests, RunBuildWebKitOrgUnitTests, RunBuildbotCheckConfigForBuildWebKit, RunBuildbotCheckConfigForEWS,
RunEWSUnitTests, RunResultsdbpyTests, RunJavaScriptCoreTests, RunWebKit1Tests, RunWebKitPerlTests, RunWebKitPyPython2Tests,
- RunWebKitPyPython3Tests, RunWebKitTests, SetBuildSummary, ShowIdentifier, TriggerCrashLogSubmission, UpdateWorkingDirectory,
+ RunWebKitPyPython3Tests, RunWebKitTests, RunWebKitTestsInStressMode, RunWebKitTestsInStressGuardmallocMode,
+ SetBuildSummary, ShowIdentifier, TriggerCrashLogSubmission, UpdateWorkingDirectory,
ValidatePatch, ValidateChangeLogAndReviewer, ValidateCommiterAndReviewer, WaitForCrashCollection)
class Factory(factory.BuildFactory):
+ findModifiedLayoutTests = False
+
def __init__(self, platform, configuration=None, architectures=None, buildOnly=True, triggers=None, triggered_by=None, remotes=None, additionalArguments=None, checkRelevance=False, **kwargs):
factory.BuildFactory.__init__(self)
self.addStep(ConfigureBuild(platform=platform, configuration=configuration, architectures=architectures, buildOnly=buildOnly, triggers=triggers, triggered_by=triggered_by, remotes=remotes, additionalArguments=additionalArguments))
if checkRelevance:
self.addStep(CheckPatchRelevance())
+ if self.findModifiedLayoutTests:
+ self.addStep(FindModifiedLayoutTests())
self.addStep(ValidatePatch())
self.addStep(PrintConfiguration())
self.addStep(CheckOutSource())
@@ -138,6 +143,20 @@
self.addStep(SetBuildSummary())
+class StressTestFactory(TestFactory):
+ findModifiedLayoutTests = True
+
+ def __init__(self, platform, configuration=None, architectures=None, triggered_by=None, additionalArguments=None, checkRelevance=False, **kwargs):
+ Factory.__init__(self, platform=platform, configuration=configuration, architectures=architectures, buildOnly=False, triggered_by=triggered_by, additionalArguments=additionalArguments, checkRelevance=checkRelevance)
+ self.getProduct()
+ self.addStep(WaitForCrashCollection())
+ self.addStep(KillOldProcesses())
+ self.addStep(RunWebKitTestsInStressMode())
+ self.addStep(RunWebKitTestsInStressGuardmallocMode())
+ self.addStep(TriggerCrashLogSubmission())
+ self.addStep(SetBuildSummary())
+
+
class JSCBuildFactory(Factory):
def __init__(self, platform, configuration='release', architectures=None, triggers=None, remotes=None, additionalArguments=None, **kwargs):
Factory.__init__(self, platform=platform, configuration=configuration, architectures=architectures, buildOnly=False, triggers=triggers, remotes=remotes, additionalArguments=additionalArguments, checkRelevance=True)
Modified: trunk/Tools/CISupport/ews-build/factories_unittest.py (275306 => 275307)
--- trunk/Tools/CISupport/ews-build/factories_unittest.py 2021-03-31 21:45:33 UTC (rev 275306)
+++ trunk/Tools/CISupport/ews-build/factories_unittest.py 2021-03-31 21:48:22 UTC (rev 275307)
@@ -579,6 +579,31 @@
])
+class TestStressTestFactory(TestCase):
+ def test_stress_test_factory(self):
+ factory = factories.StressTestFactory(platform='mac-catalina', configuration='release', architectures=["x86_64"])
+ self.assertBuildSteps(factory.steps, [
+ _BuildStepFactory(steps.ConfigureBuild, platform='mac-catalina', configuration='release', architectures=["x86_64"],
+ buildOnly=False, triggers=None, triggered_by=None, remotes=None, additionalArguments=None),
+ _BuildStepFactory(steps.FindModifiedLayoutTests),
+ _BuildStepFactory(steps.ValidatePatch),
+ _BuildStepFactory(steps.PrintConfiguration),
+ _BuildStepFactory(steps.CheckOutSource),
+ _BuildStepFactory(steps.CheckOutSpecificRevision),
+ _BuildStepFactory(steps.FetchBranches),
+ _BuildStepFactory(steps.ShowIdentifier),
+ _BuildStepFactory(steps.ApplyPatch),
+ _BuildStepFactory(steps.DownloadBuiltProduct),
+ _BuildStepFactory(steps.ExtractBuiltProduct),
+ _BuildStepFactory(steps.WaitForCrashCollection),
+ _BuildStepFactory(steps.KillOldProcesses),
+ _BuildStepFactory(steps.RunWebKitTestsInStressMode),
+ _BuildStepFactory(steps.RunWebKitTestsInStressGuardmallocMode),
+ _BuildStepFactory(steps.TriggerCrashLogSubmission),
+ _BuildStepFactory(steps.SetBuildSummary),
+ ])
+
+
class TestJSCBuildAndTestsFactory(TestCase):
def test_jsc_mipsel_factory(self):
factory = factories.JSCBuildFactory(platform='jsc', configuration='release', architectures=["mipsel"])
Modified: trunk/Tools/CISupport/ews-build/loadConfig.py (275306 => 275307)
--- trunk/Tools/CISupport/ews-build/loadConfig.py 2021-03-31 21:45:33 UTC (rev 275306)
+++ trunk/Tools/CISupport/ews-build/loadConfig.py 2021-03-31 21:48:22 UTC (rev 275307)
@@ -1,4 +1,4 @@
-# Copyright (C) 2018-2019 Apple Inc. All rights reserved.
+# Copyright (C) 2018-2021 Apple Inc. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@@ -31,8 +31,9 @@
from buildbot.util import identifiers as buildbot_identifiers
from factories import (APITestsFactory, BindingsFactory, BuildFactory, CommitQueueFactory, Factory, GTKBuildFactory,
- GTKTestsFactory, JSCBuildFactory, JSCBuildAndTestsFactory, JSCTestsFactory, StyleFactory, TestFactory, tvOSBuildFactory,
- WPEFactory, WebKitPerlFactory, WebKitPyFactory, WinCairoFactory, WindowsFactory, iOSBuildFactory, iOSEmbeddedBuildFactory, iOSTestsFactory,
+ GTKTestsFactory, JSCBuildFactory, JSCBuildAndTestsFactory, JSCTestsFactory, StressTestFactory,
+ StyleFactory, TestFactory, tvOSBuildFactory, WPEFactory, WebKitPerlFactory, WebKitPyFactory,
+ WinCairoFactory, WindowsFactory, iOSBuildFactory, iOSEmbeddedBuildFactory, iOSTestsFactory,
macOSBuildFactory, macOSBuildOnlyFactory, macOSWK1Factory, macOSWK2Factory, ServicesFactory, WatchListFactory, watchOSBuildFactory)
BUILDER_NAME_LENGTH_LIMIT = 70
Modified: trunk/Tools/ChangeLog (275306 => 275307)
--- trunk/Tools/ChangeLog 2021-03-31 21:45:33 UTC (rev 275306)
+++ trunk/Tools/ChangeLog 2021-03-31 21:48:22 UTC (rev 275307)
@@ -1,3 +1,17 @@
+2021-03-31 Aakash Jain <aakash_j...@apple.com>
+
+ EWS should stress test newly added tests
+ https://bugs.webkit.org/show_bug.cgi?id=223938
+
+ Reviewed by Jonathan Bedard.
+
+ * CISupport/ews-build/config.json:
+ * CISupport/ews-build/factories.py:
+ (Factory):
+ (StressTestFactory):
+ * CISupport/ews-build/factories_unittest.py: Added unit-tests.
+ * CISupport/ews-build/loadConfig.py:
+
2021-03-31 David Kilzer <ddkil...@apple.com>
REGRESSION (r275150): set-webkit-configuration is too aggressive at deleting config files when switch is not set