[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373

abarth at webkit.org abarth at webkit.org
Wed Apr 7 23:52:43 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit 1c8b2b6461733258c866222e1275a3980f361ff5
Author: abarth at webkit.org <abarth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Nov 20 22:52:47 2009 +0000

    2009-11-20  Adam Barth  <abarth at webkit.org>
    
            Reviewed by Eric Seidel.
            Reviewed by Eric Seidel.
    
            BuildQueue should check if the tree is currently buildable
            https://bugs.webkit.org/show_bug.cgi?id=31744
    
            * Scripts/bugzilla-tool:
            * Scripts/modules/landingsequence.py:
            * Scripts/modules/webkitlandingscripts.py:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51260 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index ef2c0b4..13d65da 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,6 +1,18 @@
 2009-11-20  Adam Barth  <abarth at webkit.org>
 
         Reviewed by Eric Seidel.
+        Reviewed by Eric Seidel.
+
+        BuildQueue should check if the tree is currently buildable
+        https://bugs.webkit.org/show_bug.cgi?id=31744
+
+        * Scripts/bugzilla-tool:
+        * Scripts/modules/landingsequence.py:
+        * Scripts/modules/webkitlandingscripts.py:
+
+2009-11-20  Adam Barth  <abarth at webkit.org>
+
+        Reviewed by Eric Seidel.
 
         Move prepare_clean_working_directory into the LandingSequence
         https://bugs.webkit.org/show_bug.cgi?id=31743
diff --git a/WebKitTools/Scripts/bugzilla-tool b/WebKitTools/Scripts/bugzilla-tool
index a27b07c..d057a5e 100755
--- a/WebKitTools/Scripts/bugzilla-tool
+++ b/WebKitTools/Scripts/bugzilla-tool
@@ -133,6 +133,29 @@ class CheckStyle(Command):
         self.check_style(attachment, options, tool)
 
 
+class BuildSequence(ConditionalLandingSequence):
+    def __init__(self, options, tool):
+        ConditionalLandingSequence.__init__(self, None, options, tool)
+
+    def run(self):
+        self.clean()
+        self.update()
+        self.build()
+
+
+class Build(Command):
+    name = "build"
+    def __init__(self):
+        options = WebKitLandingScripts.cleaning_options()
+        options += WebKitLandingScripts.build_options()
+        options += WebKitLandingScripts.land_options()
+        Command.__init__(self, "Updates working copy and does a build.", "", options)
+
+    def execute(self, options, args, tool):
+        sequence = BuildSequence(options, tool)
+        sequence.run_and_handle_errors()
+
+
 class ApplyAttachment(Command):
     name = "apply-attachment"
     def __init__(self):
@@ -763,11 +786,14 @@ class BuildQueue(AbstractTryQueue):
         self.port = WebKitPort.port(self.options)
 
     def should_proceed_with_work_item(self, patch):
-        # FIXME: We should check whether we're currently able to build!
+        try:
+            self.run_bugzilla_tool(["build", self.port.flag(), "--force-clean", "--quiet"])
+        except ScriptError, e:
+            return (False, "Unable to perform a build.", None)
         return (True, "Building patch %s on bug %s." % (patch["id"], patch["bug_id"]), patch["bug_id"])
 
     def process_work_item(self, patch):
-        self.run_bugzilla_tool(["build-attachment", self.port.flag(), "--force-clean", patch["id"]])
+        self.run_bugzilla_tool(["build-attachment", self.port.flag(), "--force-clean", "--quiet", "--no-update", patch["id"]])
 
 
 class BugzillaTool(MultiCommandTool):
diff --git a/WebKitTools/Scripts/modules/landingsequence.py b/WebKitTools/Scripts/modules/landingsequence.py
index 4dabcbc..ef12753 100644
--- a/WebKitTools/Scripts/modules/landingsequence.py
+++ b/WebKitTools/Scripts/modules/landingsequence.py
@@ -111,6 +111,10 @@ class ConditionalLandingSequence(LandingSequence):
     def __init__(self, patch, options, tool):
         LandingSequence.__init__(self, patch, options, tool)
 
+    def update(self):
+        if self._options.update:
+            LandingSequence.update(self)
+
     def build(self):
         if self._options.build:
             LandingSequence.build(self)
diff --git a/WebKitTools/Scripts/modules/webkitlandingscripts.py b/WebKitTools/Scripts/modules/webkitlandingscripts.py
index 87bcc4d..e624505 100644
--- a/WebKitTools/Scripts/modules/webkitlandingscripts.py
+++ b/WebKitTools/Scripts/modules/webkitlandingscripts.py
@@ -36,7 +36,7 @@ import sys
 from optparse import make_option
 
 from modules.changelogs import ChangeLog
-from modules.logging import log, tee
+from modules.logging import error, log, tee
 from modules.scm import CommitMessage, detect_scm_system, ScriptError, CheckoutNeedsUpdate
 from modules.webkitport import WebKitPort
 
@@ -78,9 +78,10 @@ class WebKitLandingScripts:
     @staticmethod
     def land_options():
         return [
-            make_option("--no-close", action="store_false", dest="close_bug", default=True, help="Leave bug open after landing."),
+            make_option("--no-update", action="store_false", dest="update", default=True, help="Don't update the working directory."),
             make_option("--no-build", action="store_false", dest="build", default=True, help="Commit without building first, implies --no-test."),
             make_option("--no-test", action="store_false", dest="test", default=True, help="Commit without running run-webkit-tests."),
+            make_option("--no-close", action="store_false", dest="close_bug", default=True, help="Leave bug open after landing."),
         ]
 
     @staticmethod

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list