Title: [188814] trunk/Tools
Revision
188814
Author
[email protected]
Date
2015-08-21 18:39:48 -0700 (Fri, 21 Aug 2015)

Log Message

Make Dashboard.Branches be objects of the form (repository, "branch name") and update existing code
to work with these new objects.
https://bugs.webkit.org/show_bug.cgi?id=148188

Patch by Jason Marcell <[email protected]> on 2015-08-21
Reviewed by Daniel Bates.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
(Buildbot.prototype._normalizeQueueInfo): Renamed BuildbotQueue.branch to BuildbotQueue.branches.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotCombinedQueueView.js:
(BuildbotCombinedQueueView): Changed to work with new branch objects which represent a
(repository, "branch name")-pair.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js: Ditto.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue): Renamed BuildbotQueue.branch to BuildbotQueue.branches.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView.prototype._appendPendingRevisionCount): Changed to work with new branch
objects which represent a (repository, "branch name")-pair.
(BuildbotQueueView.prototype._presentPopoverForPendingCommits): Ditto.
(BuildbotQueueView.prototype._revisionContentWithPopoverForIteration): Ditto.
(BuildbotQueueView.prototype._addDividerToPopover): Ditto.
(BuildbotQueueView.prototype.revisionContentForIteration): Ditto.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js: Renamed
BuildbotQueue.branch to BuildbotQueue.branches.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot.prototype.get defaultBranches): Changed to new (repository, "branch name") format.

Modified Paths

Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js (188813 => 188814)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js	2015-08-22 01:39:48 UTC (rev 188814)
@@ -103,7 +103,7 @@
     _normalizeQueueInfo: function(queueInfo)
     {
         if (!queueInfo.combinedQueues)
-            queueInfo.branch = queueInfo.branch || this.defaultBranches;
+            queueInfo.branches = queueInfo.branches || this.defaultBranches;
         queueInfo.debug = queueInfo.debug || false;
         queueInfo.builder = queueInfo.builder || false;
         queueInfo.tester = queueInfo.tester || false;

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotCombinedQueueView.js (188813 => 188814)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotCombinedQueueView.js	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotCombinedQueueView.js	2015-08-22 01:39:48 UTC (rev 188814)
@@ -25,21 +25,26 @@
 
 BuildbotCombinedQueueView = function(queue)
 {
-    console.assert(queue.branch === undefined);
-    var indexOfFirstQueueWithRepository = {};
-    for (var i = 0, end = queue.combinedQueues.length; i < end; ++i) {
-        console.assert(queue.combinedQueues[0].buildbot === queue.combinedQueues[i].buildbot);
-        var branches = queue.combinedQueues[i].branch;
-        for (var repository in branches) {
-            var indexOfFirstQueue = indexOfFirstQueueWithRepository[repository];
-            if (indexOfFirstQueue === undefined) {
-                indexOfFirstQueueWithRepository[repository] = i;
+    console.assert(queue.branches === undefined);
+    var indicesOfFirstQueueWithRepository = {};
+    var combinedQueues = queue.combinedQueues;
+    var buildbot = combinedQueues[0].buildbot;
+    for (var i = 0; i < combinedQueues.length; ++i) {
+        var subQueue = combinedQueues[i];
+        console.assert(buildbot === subQueue.buildbot);
+        var branches = subQueue.branches;
+        for (var j = 0; j < branches.length; ++j) {
+            var branch = branches[j];
+            var repositoryName = branch.repository.name;
+            var expected = indicesOfFirstQueueWithRepository[repositoryName];
+            if (expected === undefined) {
+                indicesOfFirstQueueWithRepository[repositoryName] = { queueIndex: i, branchIndex: j };
                 continue;
             }
-            var message = queue.id + ": combinedQueues[" + i + "].branch[" + repository + "]";
-            message += " === combinedQueues[" + indexOfFirstQueue + "].branch[" + repository + "]";
-            console.assert(queue.combinedQueues[i].branch[repository]
-                === queue.combinedQueues[indexOfFirstQueue].branch[repository], message);
+            var expectedBranch = combinedQueues[expected.queueIndex].branches[expected.branchIndex];
+            var message = queue.id + ": " + branch.name + " === combinedQueues[" + i + "].branch[" + j + "] ";
+            message += "=== combinedQueues[" + expected.queueIndex + "].branch[" + expected.branchIndex + "] === " + expectedBranch.name;
+            console.assert(branch.name === expectedBranch.name, message);
         }
     }
 

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js (188813 => 188814)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js	2015-08-22 01:39:48 UTC (rev 188814)
@@ -196,20 +196,23 @@
         var revisionProperty = data.properties.findFirst(function(property) {
             return property[0] === "got_revision";
         });
-        for (repository in this.queue.branch) {
+        var branches = this.queue.branches;
+        for (var i = 0; i < branches.length; ++i) {
+            var repository = branches[i].repository;
+            var repositoryName = repository.name;
             var key;
             var fallbackKey;
-            if (repository === Dashboard.Repository.OpenSource.name) {
+            if (repository === Dashboard.Repository.OpenSource) {
                 key = "WebKit";
                 fallbackKey = "opensource";
-            } else if (repository === Dashboard.Repository.Internal.name) {
+            } else if (repository === Dashboard.Repository.Internal) {
                 key = "Internal";
                 fallbackKey = "internal";
             } else {
-                key = repository;
+                key = repositoryName;
                 fallbackKey = null;
             }
-            this.revision[repository] = parseRevisionProperty(revisionProperty, key, fallbackKey);
+            this.revision[repositoryName] = parseRevisionProperty(revisionProperty, key, fallbackKey);
         }
 
         function sourceStampChanges(sourceStamp) {

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js (188813 => 188814)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js	2015-08-22 01:39:48 UTC (rev 188814)
@@ -34,7 +34,7 @@
     this.id = id;
 
     // FIXME: Some of these are presentation only, and should be handled above BuildbotQueue level.
-    this.branch = info.branch;
+    this.branches = info.branches;
     this.platform = info.platform.name;
     this.debug = info.debug;
     this.builder = info.builder;

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js (188813 => 188814)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js	2015-08-22 01:39:48 UTC (rev 188814)
@@ -80,11 +80,12 @@
 
         // FIXME: To be 100% correct, we should also filter out changes that are ignored by
         // the queue, see _should_file_trigger_build in wkbuild.py.
-        var sortedRepositories = Dashboard.sortedRepositories;
-        for (var i = 0; i < sortedRepositories.length; i++) {
-            var repository = sortedRepositories[i];
+        var branches = queue.branches;
+        for (var i = 0; i < branches.length; ++i) {
+            var branch = branches[i];
+            var repository = branch.repository;
+            var repositoryName = repository.name;
             var trac = repository.trac;
-            var repositoryName = repository.name;
             var latestProductiveRevisionNumber = latestProductiveIteration.revision[repositoryName];
             if (!latestProductiveRevisionNumber)
                 continue;
@@ -93,7 +94,7 @@
                 return;
             }
 
-            totalRevisionsBehind += trac.commitsOnBranch(queue.branch[repositoryName], function(commit) { return commit.revisionNumber > latestProductiveRevisionNumber; }).length;
+            totalRevisionsBehind += trac.commitsOnBranch(branch.name, function(commit) { return commit.revisionNumber > latestProductiveRevisionNumber; }).length;
         }
 
         if (!totalRevisionsBehind)
@@ -154,15 +155,16 @@
         content.className = "commit-history-popover";
 
         var shouldAddDivider = false;
-        var sortedRepositories = Dashboard.sortedRepositories;
-        for (var i = 0; i < sortedRepositories.length; ++i) {
-            var repository = sortedRepositories[i];
+        var branches = queue.branches;
+        for (var i = 0; i < branches.length; ++i) {
+            var branch = branches[i];
+            var repository = branch.repository;
+            var repositoryName = repository.name;
             var trac = repository.trac;
-            var repositoryName = repository.name;
             var latestProductiveRevisionNumber = latestProductiveIteration.revision[repositoryName];
             if (!latestProductiveRevisionNumber || !trac.latestRecordedRevisionNumber)
                 continue;
-            var lines = this._popoverLinesForCommitRange(trac, queue.branch[repositoryName], latestProductiveRevisionNumber + 1, trac.latestRecordedRevisionNumber);
+            var lines = this._popoverLinesForCommitRange(trac, branch.name, latestProductiveRevisionNumber + 1, trac.latestRecordedRevisionNumber);
             var length = lines.length;
             if (length && shouldAddDivider)
                 this._addDividerToPopover(content);
@@ -208,8 +210,9 @@
         return true;
     },
 
-    _revisionContentWithPopoverForIteration: function(iteration, previousIteration, repository)
+    _revisionContentWithPopoverForIteration: function(iteration, previousIteration, branch)
     {
+        var repository = branch.repository;
         var repositoryName = repository.name;
         console.assert(iteration.revision[repositoryName]);
         var content = document.createElement("span");
@@ -220,7 +223,7 @@
             console.assert(previousIteration.revision[repositoryName]);
             var context = {
                 trac: repository.trac,
-                branch: iteration.queue.branch[repositoryName],
+                branch: branch.name,
                 firstRevision: previousIteration.revision[repositoryName] + 1,
                 lastRevision: iteration.revision[repositoryName]
             };
@@ -269,12 +272,12 @@
     {
         var fragment = document.createDocumentFragment();
         var shouldAddPlusSign = false;
-        var sortedRepositories = Dashboard.sortedRepositories;
-        for (var i = 0; i < sortedRepositories.length; ++i) {
-            var repository = sortedRepositories[i];
-            if (!iteration.revision[repository.name])
+        var branches = iteration.queue.branches;
+        for (var i = 0; i < branches.length; ++i) {
+            var branch = branches[i];
+            if (!iteration.revision[branch.repository.name])
                 continue;
-            var content = this._revisionContentWithPopoverForIteration(iteration, previousDisplayedIteration, repository);
+            var content = this._revisionContentWithPopoverForIteration(iteration, previousDisplayedIteration, branch);
             if (shouldAddPlusSign)
                 fragment.appendChild(document.createTextNode(" \uff0b "));
             fragment.appendChild(content);

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js (188813 => 188814)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js	2015-08-22 01:39:48 UTC (rev 188814)
@@ -35,7 +35,7 @@
             var info = buildbot.queuesInfo[id];
             var queue = {
                 id: id,
-                branch: info.branch,
+                branches: info.branches,
                 platform: info.platform.name,
                 heading: info.heading,
                 builder: info.builder,

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js (188813 => 188814)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js	2015-08-22 01:39:48 UTC (rev 188814)
@@ -77,7 +77,7 @@
 
     get defaultBranches()
     {
-        return { openSource: "trunk" };
+        return [{ repository: Dashboard.Repository.OpenSource, name: "trunk" }];
     },
 
     layoutTestResultsDirectoryURLForIteration: function(iteration)

Modified: trunk/Tools/ChangeLog (188813 => 188814)


--- trunk/Tools/ChangeLog	2015-08-22 01:34:47 UTC (rev 188813)
+++ trunk/Tools/ChangeLog	2015-08-22 01:39:48 UTC (rev 188814)
@@ -1,3 +1,31 @@
+2015-08-21  Jason Marcell  <[email protected]>
+
+        Make Dashboard.Branches be objects of the form (repository, "branch name") and update existing code
+        to work with these new objects.
+        https://bugs.webkit.org/show_bug.cgi?id=148188
+
+        Reviewed by Daniel Bates.
+
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
+        (Buildbot.prototype._normalizeQueueInfo): Renamed BuildbotQueue.branch to BuildbotQueue.branches.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotCombinedQueueView.js:
+        (BuildbotCombinedQueueView): Changed to work with new branch objects which represent a
+        (repository, "branch name")-pair.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js: Ditto.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
+        (BuildbotQueue): Renamed BuildbotQueue.branch to BuildbotQueue.branches.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
+        (BuildbotQueueView.prototype._appendPendingRevisionCount): Changed to work with new branch
+        objects which represent a (repository, "branch name")-pair.
+        (BuildbotQueueView.prototype._presentPopoverForPendingCommits): Ditto.
+        (BuildbotQueueView.prototype._revisionContentWithPopoverForIteration): Ditto.
+        (BuildbotQueueView.prototype._addDividerToPopover): Ditto.
+        (BuildbotQueueView.prototype.revisionContentForIteration): Ditto.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js: Renamed
+        BuildbotQueue.branch to BuildbotQueue.branches.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
+        (WebKitBuildbot.prototype.get defaultBranches): Changed to new (repository, "branch name") format.
+
 2015-08-21  Tim Horton  <[email protected]>
 
         Stop building WebKitTestRunner for 32-bit platforms
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to