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

eric at webkit.org eric at webkit.org
Thu Apr 8 00:37:56 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit 651c6f95a19745200ed55e96565d4880f0e0cf8d
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Dec 15 23:47:58 2009 +0000

    2009-12-15  Eric Seidel  <eric at webkit.org>
    
            Reviewed by Adam Barth.
    
            bugzilla-tool / commit-queue should add results links to bugs when more results are available on the status bot
            https://bugs.webkit.org/show_bug.cgi?id=32546
    
            You can see an example of this working in:
            https://bugs.webkit.org/show_bug.cgi?id=32585#c3
    
            * QueueStatusServer/queue_status.py:
             - Output the id of the newly created status.
            * Scripts/modules/commands/queues.py:
             - Tweak the commit-queue logging to include a full status link.
            * Scripts/modules/statusbot.py:
             - update_status should return the newly created status id.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52180 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 12615e1..85f190d 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,20 @@
+2009-12-15  Eric Seidel  <eric at webkit.org>
+
+        Reviewed by Adam Barth.
+
+        bugzilla-tool / commit-queue should add results links to bugs when more results are available on the status bot
+        https://bugs.webkit.org/show_bug.cgi?id=32546
+
+        You can see an example of this working in:
+        https://bugs.webkit.org/show_bug.cgi?id=32585#c3
+
+        * QueueStatusServer/queue_status.py:
+         - Output the id of the newly created status.
+        * Scripts/modules/commands/queues.py:
+         - Tweak the commit-queue logging to include a full status link.
+        * Scripts/modules/statusbot.py:
+         - update_status should return the newly created status id.
+
 2009-12-15  Andras Becsi  <abecsi at inf.u-szeged.hu>
 
         Reviewed by Tor Arne Vestbø.
diff --git a/WebKitTools/QueueStatusServer/queue_status.py b/WebKitTools/QueueStatusServer/queue_status.py
index fc457ab..8cc815d 100644
--- a/WebKitTools/QueueStatusServer/queue_status.py
+++ b/WebKitTools/QueueStatusServer/queue_status.py
@@ -147,7 +147,7 @@ class UpdateStatus(webapp.RequestHandler):
         results_file = self.request.get("results_file")
         queue_status.results_file = db.Blob(str(results_file))
         queue_status.put()
-        self.redirect('/')
+        self.response.out.write(queue_status.key().id())
 
 
 class ShowResults(webapp.RequestHandler):
diff --git a/WebKitTools/Scripts/modules/commands/queues.py b/WebKitTools/Scripts/modules/commands/queues.py
index c142769..681a4e5 100644
--- a/WebKitTools/Scripts/modules/commands/queues.py
+++ b/WebKitTools/Scripts/modules/commands/queues.py
@@ -145,11 +145,18 @@ class CommitQueue(AbstractQueue, StepSequenceErrorHandler):
 
     # StepSequenceErrorHandler methods
 
+    @staticmethod
+    def _error_message_for_bug(tool, status_id, script_error):
+        if not script_error.output:
+            return script_error.message_with_output()
+        results_link = tool.status_bot.results_url_for_status(status_id)
+        return "%s\nFull output: %s" % (script_error.message_with_output(), results_link)
+
     @classmethod
     def handle_script_error(cls, tool, state, script_error):
         patch = state["patch"]
-        tool.status_bot.update_status(cls.name, "patch %s failed: %s" % (patch['id'], script_error.message), patch, StringIO(script_error.output))
-        tool.bugs.reject_patch_from_commit_queue(patch["id"], script_error.message_with_output())
+        status_id = tool.status_bot.update_status(cls.name, "patch %s failed: %s" % (patch['id'], script_error.message), patch, StringIO(script_error.output))
+        tool.bugs.reject_patch_from_commit_queue(patch["id"], cls._error_message_for_bug(tool, status_id, script_error))
 
 
 class AbstractReviewQueue(AbstractQueue, PersistentPatchCollectionDelegate, StepSequenceErrorHandler):
diff --git a/WebKitTools/Scripts/modules/statusbot.py b/WebKitTools/Scripts/modules/statusbot.py
index 62d18ed..3899d53 100644
--- a/WebKitTools/Scripts/modules/statusbot.py
+++ b/WebKitTools/Scripts/modules/statusbot.py
@@ -62,6 +62,9 @@ class StatusBot:
         self.statusbot_host = host
         self.statusbot_server_url = "http://%s" % self.statusbot_host
 
+    def results_url_for_status(self, status_id):
+        return "%s/results/%s" % (self.statusbot_server_url, status_id)
+
     def update_status(self, queue_name, status, patch=None, results_file=None):
         # During unit testing, statusbot_host is None
         if not self.statusbot_host:
@@ -80,7 +83,8 @@ class StatusBot:
         self.browser['status'] = status
         if results_file:
             self.browser.add_file(results_file, "text/plain", "results.txt", 'results_file')
-        self.browser.submit()
+        response = self.browser.submit()
+        return response.read() # This is the id of the newly created status object.
 
     def patch_status(self, queue_name, patch_id):
         update_status_url = "%s/patch-status/%s/%s" % (self.statusbot_server_url, queue_name, patch_id)

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list