Diff
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json (266207 => 266208)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json 2020-08-27 00:08:22 UTC (rev 266207)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json 2020-08-27 00:10:05 UTC (rev 266208)
@@ -88,6 +88,8 @@
{ "name": "gtk-linux-bot-13", "platform": "gtk" },
{ "name": "gtk-linux-bot-14", "platform": "gtk" },
{ "name": "gtk-linux-bot-15", "platform": "gtk" },
+ { "name": "gtk-linux-bot-16", "platform": "gtk" },
+ { "name": "gtk-linux-bot-17", "platform": "gtk" },
{ "name": "jsconly-linux-igalia-bot-1", "platform": "jsc-only" },
{ "name": "jsconly-linux-igalia-bot-2", "platform": "jsc-only" },
@@ -100,7 +102,9 @@
{ "name": "wpe-linux-bot-3", "platform": "wpe" },
{ "name": "wpe-linux-bot-4", "platform": "wpe" },
{ "name": "wpe-linux-bot-5", "platform": "wpe" },
- { "name": "wpe-linux-bot-6", "platform": "wpe" }
+ { "name": "wpe-linux-bot-6", "platform": "wpe" },
+ { "name": "wpe-linux-bot-7", "platform": "wpe" },
+ { "name": "wpe-linux-bot-8", "platform": "wpe" }
],
"builders": [
@@ -288,7 +292,7 @@
"slavenames": ["bot545"]
},
{
- "name": "GTK Linux 64-bit Release (Build)", "type": "BuildAndGenerateJSCBundle", "builddir": "gtk-linux-64-release",
+ "name": "GTK Linux 64-bit Release (Build)", "type": "Build", "builddir": "gtk-linux-64-release",
"platform": "gtk", "configuration": "release", "architectures": ["x86_64"],
"triggers": ["gtk-linux-64-release-tests", "gtk-linux-64-release-tests-js", "gtk-linux-64-release-tests-webdriver",
"gtk-linux-64-release-wayland-tests", "gtk-linux-64-release-perf-tests"],
@@ -355,6 +359,18 @@
"slavenames": ["gtk-linux-slave-11"]
},
{
+ "name": "GTK-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804", "type": "BuildAndGenerateMiniBrowserBundle", "builddir": "gtk-linux-64-packaging-nigthly-ubuntu1804",
+ "platform": "gtk", "configuration": "release", "architectures": ["x86_64"],
+ "additionalArguments": ["--no-bubblewrap-sandbox"],
+ "slavenames": ["gtk-linux-bot-16"]
+ },
+ {
+ "name": "GTK-Linux-64bit-Release-Packaging-Nightly-Ubuntu2004", "type": "BuildAndGenerateMiniBrowserJSCBundle", "builddir": "gtk-linux-64-packaging-nigthly-ubuntu2004",
+ "platform": "gtk", "configuration": "release", "architectures": ["x86_64"],
+ "additionalArguments": ["--no-bubblewrap-sandbox"],
+ "slavenames": ["gtk-linux-bot-17"]
+ },
+ {
"name": "WinCairo 64-bit WKL Release (Build)", "type": "Build", "builddir": "wincairo-wkl-release",
"platform": "wincairo", "configuration": "release", "architectures": ["x86_64"],
"triggers": ["wincairo-wkl-release-tests", "wincairo-jsc-release-tests"],
@@ -447,6 +463,18 @@
"name": "WPE Linux 64-bit Debug (Tests JS)", "type": "TestJS", "builddir": "wpe-linux-64-debug-tests-js",
"platform": "wpe", "configuration": "debug", "architectures": ["x86_64"],
"slavenames": ["wpe-linux-bot-6"]
+ },
+ {
+ "name": "WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804", "type": "BuildAndGenerateMiniBrowserBundle", "builddir": "wpe-linux-64-packaging-nigthly-ubuntu1804",
+ "platform": "wpe", "configuration": "release", "architectures": ["x86_64"],
+ "additionalArguments": ["--no-bubblewrap-sandbox", "--cmakeargs=-DENABLE_WPE_QT_API=OFF"],
+ "slavenames": ["wpe-linux-bot-7"]
+ },
+ {
+ "name": "WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu2004", "type": "BuildAndGenerateMiniBrowserBundle", "builddir": "wpe-linux-64-packaging-nigthly-ubuntu2004",
+ "platform": "wpe", "configuration": "release", "architectures": ["x86_64"],
+ "additionalArguments": ["--no-bubblewrap-sandbox", "--cmakeargs=-DENABLE_WPE_QT_API=OFF"],
+ "slavenames": ["wpe-linux-bot-8"]
}
],
@@ -599,6 +627,11 @@
},
{ "type": "Triggerable", "name": "wpe-linux-64-debug-tests-js",
"builderNames": ["WPE Linux 64-bit Debug (Tests JS)"]
+ },
+ { "type": "Nightly", "name": "NightlyScheduler", "change_filter": "trunk_filter",
+ "branch": "trunk", "hour": 22, "minute": 0,
+ "builderNames": ["GTK-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804", "GTK-Linux-64bit-Release-Packaging-Nightly-Ubuntu2004",
+ "WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804", "WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu2004"]
}
]
}
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/factories.py (266207 => 266208)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/factories.py 2020-08-27 00:08:22 UTC (rev 266207)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/factories.py 2020-08-27 00:10:05 UTC (rev 266208)
@@ -47,6 +47,7 @@
class BuildFactory(Factory):
ShouldRunJSCBundleStep = False
+ ShouldRunMiniBrowserBundleStep = False
def __init__(self, platform, configuration, architectures, triggers=None, additionalArguments=None, SVNMirror=None, device_model=None):
Factory.__init__(self, platform, configuration, architectures, True, additionalArguments, SVNMirror, device_model)
@@ -56,6 +57,11 @@
else:
self.addStep(CompileWebKit())
+ if self.ShouldRunJSCBundleStep:
+ self.addStep(GenerateJSCBundle())
+ if self.ShouldRunMiniBrowserBundleStep:
+ self.addStep(GenerateMiniBrowserBundle())
+
if triggers:
self.addStep(ArchiveBuiltProduct())
self.addStep(UploadBuiltProduct())
@@ -62,8 +68,6 @@
if platform.startswith('mac') or platform.startswith('ios-simulator') or platform.startswith('tvos-simulator') or platform.startswith('watchos-simulator'):
self.addStep(ArchiveMinifiedBuiltProduct())
self.addStep(UploadMinifiedBuiltProduct())
- if self.ShouldRunJSCBundleStep:
- self.addStep(GenerateJSCBundle())
self.addStep(TransferToS3())
self.addStep(trigger.Trigger(schedulerNames=triggers))
@@ -71,7 +75,6 @@
class TestFactory(Factory):
JSCTestClass = RunJavaScriptCoreTests
LayoutTestClass = RunWebKitTests
- ShouldRunJSCBundleStep = False
def getProduct(self):
self.addStep(DownloadBuiltProduct())
@@ -112,8 +115,6 @@
self.addStep(ArchiveTestResults())
self.addStep(UploadTestResults())
self.addStep(ExtractTestResults())
- if self.ShouldRunJSCBundleStep:
- self.addStep(GenerateJSCBundle())
if platform == "gtk":
self.addStep(RunGtkAPITests())
if additionalArguments and "--display-server=wayland" in additionalArguments:
@@ -179,8 +180,13 @@
ShouldRunJSCBundleStep = True
-class BuildAndNonLayoutTestAndGenerateJSCBundleFactory(BuildAndNonLayoutTestFactory):
+class BuildAndGenerateMiniBrowserBundleFactory(BuildFactory):
+ ShouldRunMiniBrowserBundleStep = True
+
+
+class BuildAndGenerateMiniBrowserJSCBundleFactory(BuildFactory):
ShouldRunJSCBundleStep = True
+ ShouldRunMiniBrowserBundleStep = True
class TestJSCFactory(Factory):
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/loadConfig.py (266207 => 266208)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/loadConfig.py 2020-08-27 00:08:22 UTC (rev 266207)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/loadConfig.py 2020-08-27 00:10:05 UTC (rev 266208)
@@ -21,7 +21,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
from buildbot.buildslave import BuildSlave
-from buildbot.scheduler import AnyBranchScheduler, Triggerable
+from buildbot.scheduler import AnyBranchScheduler, Triggerable, Nightly
from buildbot.schedulers.forcesched import FixedParameter, ForceScheduler, StringParameter, BooleanParameter
from buildbot.schedulers.filter import ChangeFilter
from buildbot.process import buildstep, factory, properties
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps.py (266207 => 266208)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps.py 2020-08-27 00:08:22 UTC (rev 266207)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps.py 2020-08-27 00:10:05 UTC (rev 266208)
@@ -310,6 +310,18 @@
descriptionDone = ["generated jsc bundle"]
haltOnFailure = False
+
+class GenerateMiniBrowserBundle(shell.ShellCommand):
+ command = ["./Tools/Scripts/generate-bundle", "--builder-name", WithProperties("%(buildername)s"),
+ "--bundle=MiniBrowser", WithProperties("--platform=%(fullPlatform)s"),
+ WithProperties("--%(configuration)s"), WithProperties("--revision=%(got_revision)s"),
+ "--remote-config-file", "../../remote-minibrowser-bundle-upload-config.json"]
+ name = "generate-minibrowser-bundle"
+ description = ["generating minibrowser bundle"]
+ descriptionDone = ["generated minibrowser bundle"]
+ haltOnFailure = False
+
+
class ExtractBuiltProduct(shell.ShellCommand):
command = ["python", "./Tools/BuildSlaveSupport/built-product-archive",
WithProperties("--platform=%(fullPlatform)s"), WithProperties("--%(configuration)s"), "extract"]
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps_unittest.py (266207 => 266208)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps_unittest.py 2020-08-27 00:08:22 UTC (rev 266207)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps_unittest.py 2020-08-27 00:10:05 UTC (rev 266208)
@@ -575,7 +575,7 @@
'GTK Linux 64-bit Debug (Tests)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'layout-test', 'webkitpy-test', 'webkitperl-test', 'bindings-generation-tests', 'builtins-generator-tests', 'dashboard-tests', 'archive-test-results', 'upload', 'MasterShellCommand', 'API tests'],
'GTK Linux 64-bit Debug (Tests WebDriver)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'webdriver-test'],
'GTK Linux 64-bit Debug (Tests JS)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'jscore-test', 'test262-test'],
- 'GTK Linux 64-bit Release (Build)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'compile-webkit', 'archive-built-product', 'upload', 'generate-jsc-bundle', 'transfer-to-s3', 'trigger'],
+ 'GTK Linux 64-bit Release (Build)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'compile-webkit', 'archive-built-product', 'upload', 'transfer-to-s3', 'trigger'],
'GTK Linux 64-bit Release (Perf)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'perf-test', 'benchmark-test'],
'GTK Linux 64-bit Release (Tests)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'layout-test', 'webkitpy-test', 'webkitperl-test', 'bindings-generation-tests', 'builtins-generator-tests', 'dashboard-tests', 'archive-test-results', 'upload', 'MasterShellCommand', 'API tests'],
'GTK Linux 64-bit Release (Tests WebDriver)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'webdriver-test'],
@@ -600,6 +600,10 @@
'WPE Linux 64-bit Debug (Build)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'compile-webkit', 'archive-built-product', 'upload', 'transfer-to-s3', 'trigger'],
'WPE Linux 64-bit Debug (Tests)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'layout-test', 'webkitpy-test', 'webkitperl-test', 'bindings-generation-tests', 'builtins-generator-tests', 'dashboard-tests', 'archive-test-results', 'upload', 'MasterShellCommand', 'API tests', 'webdriver-test'],
'WPE Linux 64-bit Debug (Tests JS)': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'download-built-product', 'extract-built-product', 'jscore-test', 'test262-test'],
+ 'GTK-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'compile-webkit', 'generate-minibrowser-bundle'],
+ 'GTK-Linux-64bit-Release-Packaging-Nightly-Ubuntu2004': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'compile-webkit', 'generate-jsc-bundle', 'generate-minibrowser-bundle'],
+ 'WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'compile-webkit', 'generate-minibrowser-bundle'],
+ 'WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu2004': ['configure build', 'svn', 'kill old processes', 'delete WebKitBuild directory', 'delete stale build files', 'jhbuild', 'compile-webkit', 'generate-minibrowser-bundle'],
}
Modified: trunk/Tools/ChangeLog (266207 => 266208)
--- trunk/Tools/ChangeLog 2020-08-27 00:08:22 UTC (rev 266207)
+++ trunk/Tools/ChangeLog 2020-08-27 00:10:05 UTC (rev 266208)
@@ -1,3 +1,36 @@
+2020-08-26 Carlos Alberto Lopez Perez <clo...@igalia.com>
+
+ [GTK][WPE] Add bots for generating nightly bundle packages
+ https://bugs.webkit.org/show_bug.cgi?id=215623
+
+ Reviewed by Aakash Jain.
+
+ This adds a new type of bots for GTK and WPE that runs nightly (once per day).
+ The goal of this bots its to build WebKit for a specific distribution (Ubuntu LTS and LTS-1)
+ and generate a bundle with the result of the build. The bundles are then uploaded to a
+ server for consumption on other CIs like WPT.
+
+ The MiniBrowser bundle targets a specific distribution, so each one of this new bots has to
+ run the generate-minibrowser-bundle step. However, the JSC bundle is distro-agnostic because
+ for JSC is possible to bundle all the system libraries (similar to a static build).
+ That means that we only need to run the step generate-jsc-bundle in one of the bots.
+ This step for generating the JSC bundle was previously executed in the bot
+ 'GTK Linux 64-bit Release (Build)'. This patch moves it to one of this new added bots.
+
+ * BuildSlaveSupport/build.webkit.org-config/config.json:
+ * BuildSlaveSupport/build.webkit.org-config/factories.py:
+ (BuildFactory):
+ (BuildFactory.__init__):
+ (TestFactory):
+ (TestFactory.__init__):
+ (BuildAndGenerateMiniBrowserBundleFactory):
+ (BuildAndGenerateMiniBrowserJSCBundleFactory):
+ * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
+ * BuildSlaveSupport/build.webkit.org-config/steps.py:
+ (GenerateJSCBundle):
+ (GenerateMiniBrowserBundle):
+ * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
+
2020-08-26 Jonathan Bedard <jbed...@apple.com>
[webkitcorepy] Standard Popen mocking API