Skip to content
Permalink
Browse files
2009-11-18 Yaar Schnitman <yaar@chromium.org>
        Reviewed by Darin Adler.

        Configuration for Chromium Build Slaves.

        https://bugs.webkit.org/show_bug.cgi?id=31442

        * BuildSlaveSupport/build.webkit.org-config/config.json:
        * BuildSlaveSupport/build.webkit.org-config/master.cfg:

Canonical link: https://commits.webkit.org/42596@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@51167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
eseidel committed Nov 19, 2009
1 parent b3eaca5 commit 9ea97005aef80cf97149fda6abc898f0029cabad
Showing with 44 additions and 68 deletions.
  1. +17 −5 WebKitTools/BuildSlaveSupport/build.webkit.org-config/config.json
  2. +16 −63 WebKitTools/BuildSlaveSupport/build.webkit.org-config/master.cfg
  3. +11 −0 WebKitTools/ChangeLog
@@ -25,7 +25,9 @@

{ "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",
@@ -98,9 +100,19 @@
"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"]
}
],

@@ -109,7 +121,7 @@
"SnowLeopard Intel Release (Build)", "SnowLeopard Intel Leaks",
"Windows Release (Build)", "Windows Debug (Build)",
"GTK Linux Release", "Qt Linux Release",
"Chromium Win Release"]
"Chromium Win Release", "Chromium Mac Release", "Chromium Linux Release"]
},
{ "type": "Triggerable", "name": "leopard-intel-release-tests",
"builderNames": ["Leopard Intel Release (Tests)"]
@@ -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])


@@ -320,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):
@@ -1,3 +1,14 @@
2009-11-18 Yaar Schnitman <yaar@chromium.org>

Reviewed by Darin Adler.

Configuration for Chromium Build Slaves.

https://bugs.webkit.org/show_bug.cgi?id=31442

* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/master.cfg:

2009-11-18 Eric Seidel <eric@webkit.org>

Reviewed by Darin Adler.

0 comments on commit 9ea9700

Please sign in to comment.