Title: [93840] trunk/Tools
Revision
93840
Author
[email protected]
Date
2011-08-25 17:36:13 -0700 (Thu, 25 Aug 2011)

Log Message

garden-o-matic should be able to roll out patches
https://bugs.webkit.org/show_bug.cgi?id=66982

Reviewed by Dimitri Glazkov.

This patch just wires the rollout event through the controller to the
local server, which is already set up to perform rollouts.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:

Modified Paths

Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js (93839 => 93840)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js	2011-08-26 00:34:10 UTC (rev 93839)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js	2011-08-26 00:36:13 UTC (rev 93840)
@@ -63,6 +63,16 @@
     });
 };
 
+checkout.rollout = function(revision, reason, callback)
+{
+    net.post(config.kLocalServerURL + '/rollout?' + $.param({
+        'revision': revision,
+        'reason': reason
+    }), function() {
+        callback();
+    });
+};
+
 checkout.rebaseline = function(failureInfoList, callback)
 {
     base.callInSequence(function(failureInfo, callback) {

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js (93839 => 93840)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js	2011-08-26 00:34:10 UTC (rev 93839)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js	2011-08-26 00:36:13 UTC (rev 93840)
@@ -98,8 +98,11 @@
         if (!failure) {
             failure = new ui.notifications.TestFailures();
             model.commitDataListForRevisionRange(impliedFirstFailingRevision, failureAnalysis.oldestFailingRevision).forEach(function(commitData) {
-                failure.addCommitData(commitData);
-            });
+                var suspiciousCommit = failure.addCommitData(commitData);
+                $(suspiciousCommit).bind('rollout', function() {
+                    this.onRollout(commitData.revision, failure.testNameList());
+                }.bind(this));
+            }, this);
             this._view.add(failure);
             $(failure).bind('examine', function() {
                 this.onExamine(failure);
@@ -132,6 +135,10 @@
 
         // FIXME: This doesn't belong here. Also, we need some way to call controller.dismiss().
         document.body.appendChild(resultsView);
+    },
+    onRollout: function(revision, testNameList)
+    {
+        checkout.rollout(revision, ui.rolloutReasonForTestNameList(testNameList), $.noop);
     }
 });
 

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js (93839 => 93840)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js	2011-08-26 00:34:10 UTC (rev 93839)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js	2011-08-26 00:36:13 UTC (rev 93840)
@@ -82,6 +82,13 @@
     return block;
 };
 
+ui.rolloutReasonForTestNameList = function(testNameList)
+{
+    return 'Broke:\n' + testNameList.map(function(testName) {
+        return '* ' + testName;
+    }).join('\n');
+}
+
 function builderTableDataCells(resultNodesByBuilder)
 {
     if (!resultNodesByBuilder)

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js (93839 => 93840)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js	2011-08-26 00:34:10 UTC (rev 93839)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js	2011-08-26 00:36:13 UTC (rev 93840)
@@ -56,6 +56,11 @@
         '</ul></div>');
 });
 
+test("rolloutReasonForTestNameList", 2, function() {
+    equal(ui.rolloutReasonForTestNameList(["path/to/test.html"]), "Broke:\n* path/to/test.html");
+    equal(ui.rolloutReasonForTestNameList(["path/to/test.html", "another/test.html"]), "Broke:\n* path/to/test.html\n* another/test.html");
+});
+
 test("failureDetailsStatus", 1, function() {
     var status = ui.failureDetailsStatus({
         'builderName': 'Mock Builder',

Modified: trunk/Tools/ChangeLog (93839 => 93840)


--- trunk/Tools/ChangeLog	2011-08-26 00:34:10 UTC (rev 93839)
+++ trunk/Tools/ChangeLog	2011-08-26 00:36:13 UTC (rev 93840)
@@ -1,3 +1,18 @@
+2011-08-25  Adam Barth  <[email protected]>
+
+        garden-o-matic should be able to roll out patches
+        https://bugs.webkit.org/show_bug.cgi?id=66982
+
+        Reviewed by Dimitri Glazkov.
+
+        This patch just wires the rollout event through the controller to the
+        local server, which is already set up to perform rollouts.
+
+        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
+        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
+        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
+        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
+
 2011-08-25  Viatcheslav Ostapenko  <[email protected]>
 
         [Qt] [WK2] Assert in computeViewportAttributes when MiniBrowser started with -touch
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to