Title: [184658] trunk/Websites/perf.webkit.org
- Revision
- 184658
- Author
- [email protected]
- Date
- 2015-05-20 14:22:21 -0700 (Wed, 20 May 2015)
Log Message
A/B testing rootSets should provide commit times as well as revisions
https://bugs.webkit.org/show_bug.cgi?id=145207
Reviewed by Andreas Kling.
Some continuous build systems need the commit time as well as the revision number / hash so provide one
in the root sets but maintain the backwards compatibility with buildbots that use revision number directly.
* public/include/build-requests-fetcher.php:
(BuildRequestsFetcher::fetch_roots_for_set): Made the revision info an associative array that contains
the revision number as well as the commit time.
* tools/sync-with-buildbot.py:
(schedule_request): Removed "replacement" which was a superfluous copy of "roots". Use "revision" values
when the JSON configuration refers to "root". This is necessary in buildbot instances that require WebKit
revision to be specified on its own field instead of it being a JSON that contains "revision" and "time".
Modified Paths
Diff
Modified: trunk/Websites/perf.webkit.org/ChangeLog (184657 => 184658)
--- trunk/Websites/perf.webkit.org/ChangeLog 2015-05-20 21:08:24 UTC (rev 184657)
+++ trunk/Websites/perf.webkit.org/ChangeLog 2015-05-20 21:22:21 UTC (rev 184658)
@@ -1,3 +1,21 @@
+2015-05-20 Ryosuke Niwa <[email protected]>
+
+ A/B testing rootSets should provide commit times as well as revisions
+ https://bugs.webkit.org/show_bug.cgi?id=145207
+
+ Reviewed by Andreas Kling.
+
+ Some continuous build systems need the commit time as well as the revision number / hash so provide one
+ in the root sets but maintain the backwards compatibility with buildbots that use revision number directly.
+
+ * public/include/build-requests-fetcher.php:
+ (BuildRequestsFetcher::fetch_roots_for_set): Made the revision info an associative array that contains
+ the revision number as well as the commit time.
+ * tools/sync-with-buildbot.py:
+ (schedule_request): Removed "replacement" which was a superfluous copy of "roots". Use "revision" values
+ when the JSON configuration refers to "root". This is necessary in buildbot instances that require WebKit
+ revision to be specified on its own field instead of it being a JSON that contains "revision" and "time".
+
2015-05-19 Ryosuke Niwa <[email protected]>
Build fix. Don't fall into an infinite loop when value (renamed from bytes) is zero.
Modified: trunk/Websites/perf.webkit.org/public/include/build-requests-fetcher.php (184657 => 184658)
--- trunk/Websites/perf.webkit.org/public/include/build-requests-fetcher.php 2015-05-20 21:08:24 UTC (rev 184657)
+++ trunk/Websites/perf.webkit.org/public/include/build-requests-fetcher.php 2015-05-20 21:22:21 UTC (rev 184658)
@@ -93,10 +93,11 @@
foreach ($root_rows as $row) {
$repository = $row['repository_id'];
$revision = $row['commit_revision'];
+ $commit_time = $row['commit_time'];
$root_id = $root_set_id . '-' . $repository;
array_push($root_ids, $root_id);
array_push($this->roots, array('id' => $root_id, 'repository' => $repository, 'revision' => $revision));
- $roots[$resolve_ids ? $row['repository_name'] : $row['repository_id']] = $revision;
+ $roots[$resolve_ids ? $row['repository_name'] : $row['repository_id']] = array('revision' => $revision, 'time' => $commit_time);
}
array_push($this->root_sets, array('id' => $root_set_id, 'roots' => $root_ids));
Modified: trunk/Websites/perf.webkit.org/tools/sync-with-buildbot.py (184657 => 184658)
--- trunk/Websites/perf.webkit.org/tools/sync-with-buildbot.py 2015-05-20 21:08:24 UTC (rev 184657)
+++ trunk/Websites/perf.webkit.org/tools/sync-with-buildbot.py 2015-05-20 21:22:21 UTC (rev 184658)
@@ -134,14 +134,13 @@
def schedule_request(config, request, root_sets):
roots = root_sets.get(request['rootSet'], {})
- replacements = roots.copy()
payload = {}
for property_name, property_value in config['arguments'].iteritems():
if not isinstance(property_value, dict):
payload[property_name] = property_value
elif 'root' in property_value:
- payload[property_name] = replacements[property_value['root']]
+ payload[property_name] = roots[property_value['root']]['revision']
elif 'rootsExcluding' in property_value:
excluded_roots = property_value['rootsExcluding']
filtered_roots = {}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes