summaryrefslogtreecommitdiffstats
path: root/WebKitTools/BuildSlaveSupport
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2009-12-15 10:12:09 +0000
committerSteve Block <steveblock@google.com>2009-12-17 17:41:10 +0000
commit643ca7872b450ea4efacab6188849e5aac2ba161 (patch)
tree6982576c228bcd1a7efe98afed544d840751094c /WebKitTools/BuildSlaveSupport
parentd026980fde6eb3b01c1fe49441174e89cd1be298 (diff)
downloadexternal_webkit-643ca7872b450ea4efacab6188849e5aac2ba161.zip
external_webkit-643ca7872b450ea4efacab6188849e5aac2ba161.tar.gz
external_webkit-643ca7872b450ea4efacab6188849e5aac2ba161.tar.bz2
Merge webkit.org at r51976 : Initial merge by git.
Change-Id: Ib0e7e2f0fb4bee5a186610272edf3186f0986b43
Diffstat (limited to 'WebKitTools/BuildSlaveSupport')
-rw-r--r--WebKitTools/BuildSlaveSupport/build.webkit.org-config/config.json37
-rw-r--r--WebKitTools/BuildSlaveSupport/build.webkit.org-config/master.cfg83
2 files changed, 50 insertions, 70 deletions
diff --git a/WebKitTools/BuildSlaveSupport/build.webkit.org-config/config.json b/WebKitTools/BuildSlaveSupport/build.webkit.org-config/config.json
index 2b8faf6..69ff238 100644
--- a/WebKitTools/BuildSlaveSupport/build.webkit.org-config/config.json
+++ b/WebKitTools/BuildSlaveSupport/build.webkit.org-config/config.json
@@ -22,10 +22,14 @@
{ "name": "apple-windows-4", "platform": "win"},
{ "name": "gtk-linux-slave-1", "platform": "gtk"},
+ { "name": "gtk-linux-slave-2", "platform": "gtk"},
+ { "name": "gtk-linux-slave-3", "platform": "gtk"},
{ "name": "szeged-linux-1", "platform": "qt"},
- { "name": "google-slave-1", "platform": "chromium-win" }
+ { "name": "google-windows-1", "platform": "chromium" },
+ { "name": "google-mac-1", "platform": "chromium" },
+ { "name": "google-linux-1", "platform": "chromium" }
],
"builders": [ { "name": "Tiger Intel Release", "type": "BuildAndTest", "builddir": "tiger-intel-release",
@@ -93,14 +97,34 @@
"slavenames": ["gtk-linux-slave-1"]
},
{
+ "name": "GTK Linux 32-bit Debug", "type": "BuildAndTest", "builddir": "gtk-linux-32-debug",
+ "platform": "gtk", "configuration": "debug", "architectures": ["i386"],
+ "slavenames": ["gtk-linux-slave-2"]
+ },
+ {
+ "name": "GTK Linux 64-bit Debug", "type": "BuildAndTest", "builddir": "gtk-linux-64-debug",
+ "platform": "gtk", "configuration": "debug", "architectures": ["x86_64"],
+ "slavenames": ["gtk-linux-slave-3"]
+ },
+ {
"name": "Qt Linux Release", "type": "BuildAndTest", "builddir": "qt-linux-release",
"platform": "qt", "configuration": "release", "architectures": ["i386"],
"slavenames": ["szeged-linux-1"]
},
{
- "name": "Chromium Win Release", "type": "ChromiumBuild", "builddir": "chromium-win-release",
- "platform": "chromium-win", "configuration": "release", "architectures": ["i386"],
- "slavenames": ["google-slave-1"]
+ "name": "Chromium Win Release", "type": "Build", "builddir": "chromium-win-release",
+ "platform": "chromium", "configuration": "release", "architectures": ["i386"],
+ "slavenames": ["google-windows-1"]
+ },
+ {
+ "name": "Chromium Mac Release", "type": "Build", "builddir": "chromium-mac-release",
+ "platform": "chromium", "configuration": "release", "architectures": ["i386"],
+ "slavenames": ["google-mac-1"]
+ },
+ {
+ "name": "Chromium Linux Release", "type": "Build", "builddir": "chromium-linux-release",
+ "platform": "chromium", "configuration": "release", "architectures": ["i386"],
+ "slavenames": ["google-linux-1"]
}
],
@@ -108,8 +132,9 @@
"builderNames": ["Tiger Intel Release", "Leopard Intel Release (Build)", "Leopard Intel Debug (Build)",
"SnowLeopard Intel Release (Build)", "SnowLeopard Intel Leaks",
"Windows Release (Build)", "Windows Debug (Build)",
- "GTK Linux Release", "Qt Linux Release",
- "Chromium Win Release"]
+ "GTK Linux Release", "GTK Linux 32-bit Debug", "GTK Linux 64-bit Debug",
+ "Qt Linux Release",
+ "Chromium Win Release", "Chromium Mac Release", "Chromium Linux Release"]
},
{ "type": "Triggerable", "name": "leopard-intel-release-tests",
"builderNames": ["Leopard Intel Release (Tests)"]
diff --git a/WebKitTools/BuildSlaveSupport/build.webkit.org-config/master.cfg b/WebKitTools/BuildSlaveSupport/build.webkit.org-config/master.cfg
index 6219b0d..cd81108 100644
--- a/WebKitTools/BuildSlaveSupport/build.webkit.org-config/master.cfg
+++ b/WebKitTools/BuildSlaveSupport/build.webkit.org-config/master.cfg
@@ -48,63 +48,22 @@ class CheckOutSource(source.SVN):
source.SVN.__init__(self, baseURL=self.baseURL, defaultBranch="trunk", mode=self.mode, *args, **kwargs)
-# FIXME: Remove this step once Chromium WebKit port build system is decoupled from
-# Chromium (https://bugs.webkit.org/show_bug.cgi?id=28396)
-class UpdateChromiumSource(shell.ShellCommand):
- command = ["gclient", "sync"]
- name = "update-chromium"
- description = ["updating chromium source"]
- descriptionDone = ["updated"]
- haltOnFailure = True
-
- def createSummary(self, log):
- scraper = re.compile(r"^________ running '[^\n]+third_party[/\\]WebKit[^\n]+$\n(?:^[UA]\W+[^\n]+$\n)*^(?:Updated to|At) revision (\d+)", re.DOTALL | re.MULTILINE)
- revisions = scraper.findall(log.getText())
- gotRevision = "??" # This matches SVN unknown revision response.
- if len(revisions):
- gotRevision = "r%s" % revisions[-1]
- self.descriptionDone = ["updated", gotRevision]
-
- def start(self):
- os = self.getProperty("fullPlatform").split('-')[1]
- if os == "win":
- self.setCommand(["gclient.bat", "sync"])
- revision = self.getProperty("revision")
- if revision:
- command = self.command[:]
- command.append("--revision=src/third_party/WebKit@%d" % revision)
- self.setCommand(command)
- return shell.ShellCommand.start(self)
-
-
-# FIXME: Remove this step once Chromium WebKit port build system is decoupled from
-# Chromium (https://bugs.webkit.org/show_bug.cgi?id=28396)
-class CompileChromiumWebKit(shell.ShellCommand):
- command = ["python", "../../../scripts/slave/compile.py"]
- name = "build-chromium"
- description = ["compiling"]
- descriptionDone = ["compiled"]
- haltOnFailure = True
-
- def start(self):
- os = self.getProperty("fullPlatform").split('-')[1]
- command = self.command[:]
- if os == "win":
- command.extend(["--solution=webkit.sln", "--build-dir=src\\webkit", "--", "/project", "webcore"])
- elif os == "mac":
- command.extend(["--solution=__solution__", "--build-dir=src/build", "--", "-project", "../webkit/webkit.xcodeproj", "-target", "webcore"])
- self.setCommand(command)
- return shell.ShellCommand.start(self)
-
-
class InstallWin32Dependencies(shell.Compile):
description = ["installing dependencies"]
descriptionDone = ["installed dependencies"]
command = ["perl", "./WebKitTools/Scripts/update-webkit-auxiliary-libs"]
+class InstallChromiumDependencies(shell.ShellCommand):
+ name = "gclient"
+ description = ["updating chromium dependencies"]
+ descriptionDone = ["updated chromium dependencies"]
+ command = ["perl", "./WebKitTools/Scripts/update-webkit-chromium"]
+ haltOnFailure = True
+
+
def appendCustomBuildFlags(step, platform):
- if platform in ('gtk', 'wx', 'qt'):
+ if platform in ('gtk', 'wx', 'qt', 'chromium'):
step.setCommand(step.command + ['--' + platform])
@@ -215,7 +174,7 @@ class RunWebKitTests(shell.Test):
descriptionDone = ["layout-tests"]
command = ["perl", "./WebKitTools/Scripts/run-webkit-tests", "--no-launch-safari", "--no-new-test-results",
"--no-sample-on-timeout", "--results-directory", "layout-test-results", "--use-remote-links-to-tests",
- WithProperties("--%(configuration)s")]
+ WithProperties("--%(configuration)s"), "--exit-after-n-failures", "20"]
def __init__(self, skipBuild=False, *args, **kwargs):
self.skipBuild = skipBuild
@@ -240,6 +199,8 @@ class RunWebKitTests(shell.Test):
incorrectLayoutLines.append(line)
elif line.startswith("WARNING:") and line.find(' leak') >= 0:
incorrectLayoutLines.append(line.replace('WARNING: ', ''))
+ elif line.find('Exiting early') >= 0:
+ incorrectLayoutLines.append(line)
# FIXME: Detect and summarize leaks of RefCounted objects
@@ -318,23 +279,17 @@ class Factory(factory.BuildFactory):
self.addStep(CheckOutSource)
if platform == "win":
self.addStep(InstallWin32Dependencies)
-
-# FIXME: Remove this factory once Chromium WebKit port build system is decoupled from
-# Chromium (https://bugs.webkit.org/show_bug.cgi?id=28396)
-class ChromiumBuildFactory(factory.BuildFactory):
- def __init__(self, platform, configuration, architectures):
- factory.BuildFactory.__init__(self)
- self.addStep(ConfigureBuild, platform=platform, configuration=configuration, architecture=" ".join(architectures), buildOnly=True)
- self.addStep(UpdateChromiumSource)
- self.addStep(CompileChromiumWebKit)
+ if platform == "chromium":
+ self.addStep(InstallChromiumDependencies)
class BuildFactory(Factory):
- def __init__(self, platform, configuration, architectures, triggers):
+ def __init__(self, platform, configuration, architectures, triggers=None):
Factory.__init__(self, platform, configuration, architectures, True)
self.addStep(CompileWebKit)
- self.addStep(ArchiveBuiltProduct)
- self.addStep(UploadBuiltProduct)
- self.addStep(trigger.Trigger, schedulerNames=triggers)
+ if triggers:
+ self.addStep(ArchiveBuiltProduct)
+ self.addStep(UploadBuiltProduct)
+ self.addStep(trigger.Trigger, schedulerNames=triggers)
class TestFactory(Factory):
def __init__(self, platform, configuration, architectures):