Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1061)

Unified Diff: slave/skia_slave_scripts/check_for_regressions.py

Issue 196653010: Reads bench expectations from skia-autogen svn repo. (Closed) Base URL: https://skia.googlesource.com/buildbot.git@master
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: slave/skia_slave_scripts/check_for_regressions.py
diff --git a/slave/skia_slave_scripts/check_for_regressions.py b/slave/skia_slave_scripts/check_for_regressions.py
index a1c75efc9ad44be1299b703be1228e67aaeeea48..fa828eec8fb32420cb5cfee63ad60ccf0b42e0fa 100644
--- a/slave/skia_slave_scripts/check_for_regressions.py
+++ b/slave/skia_slave_scripts/check_for_regressions.py
@@ -11,6 +11,11 @@ from utils import shell_utils
import builder_name_schema
import os
import sys
+import urllib2
+
+# URL prefix for getting bench expectations from skia-autogen svn repo.
+AUTOGEN_BENCH_EXPECTATIONS_URL_PREFIX = ('http://skia-autogen.googlecode.com/'
+ 'svn/bench/')
class CheckForRegressions(BuildStep):
@@ -21,16 +26,35 @@ class CheckForRegressions(BuildStep):
**kwargs)
def _RunInternal(self, representation):
+ # Reads expectations from skia-autogen svn repo.
+ http_response = None
+ expectations_filename = ('bench_expectations_' +
+ builder_name_schema.GetWaterfallBot(self.builder_name) + '.txt')
+ url = AUTOGEN_BENCH_EXPECTATIONS_URL_PREFIX + expectations_filename
+ try:
+ http_response = urllib2.urlopen(url)
+ except urllib2.HTTPError, e:
+ if e.code == 404:
+ print 'Skip due to missing expectations: %s' % url
borenet 2014/03/13 20:45:37 You never check again to see whether http_response
benchen 2014/03/14 01:41:10 I must've deleted the line by mistake.. On 2014/03
+ else:
+ raise Exception('HTTPError while reading expectations: %s' % e.code)
+ except urllib2.URLError, e:
+ raise Exception('URLError while reading expectations: %s' % e.reason)
borenet 2014/03/13 20:45:37 I would very strongly prefer to perform a source c
benchen 2014/03/14 01:41:10 I think svn cat is a good idea. Switched to using
+
path_to_check_bench_regressions = os.path.join('bench',
'check_bench_regressions.py')
- # TODO(borenet): We should move these expectations into expectations/bench.
+
+ # Writes the expectations from svn repo to the local file.
path_to_bench_expectations = os.path.join(
- 'bench',
- 'bench_expectations_%s.txt' % builder_name_schema.GetWaterfallBot(
- self._builder_name))
- if not os.path.isfile(path_to_bench_expectations):
- print 'Skip due to missing expectations: %s' % path_to_bench_expectations
- return
+ self._perf_range_input_dir, expectations_filename)
+ if os.path.exists(self._perf_range_input_dir):
+ os.remove(path_to_bench_expectations)
+ else:
+ os.makedirs(self._perf_range_input_dir)
borenet 2014/03/13 20:45:37 Won't the below write replace the file if it alrea
benchen 2014/03/14 01:41:10 oh I wasn't sure about it. Done.
+ file_handle = open(path_to_bench_expectations, 'w')
+ file_handle.write(http_response.read())
+ file_handle.close()
borenet 2014/03/13 20:45:37 I'd think the "with" syntax is cleaner: with open
benchen 2014/03/14 01:41:10 Done.
+
cmd = ['python', path_to_check_bench_regressions,
'-a', representation,
'-b', self._builder_name,
« slave/skia_slave_scripts/build_step.py ('K') | « slave/skia_slave_scripts/build_step.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698