Chromium Code Reviews| Index: tools/perf/PRESUBMIT.py |
| diff --git a/tools/perf/PRESUBMIT.py b/tools/perf/PRESUBMIT.py |
| index 7ac8a1831d5c7f738601cc403023e41a1b73fac2..cabde9cde28cc2b834ebe0ac57694139c26f5aa0 100644 |
| --- a/tools/perf/PRESUBMIT.py |
| +++ b/tools/perf/PRESUBMIT.py |
| @@ -31,11 +31,38 @@ def _CommonChecks(input_api, output_api): |
| black_list=PYLINT_BLACKLIST, |
| disabled_warnings=PYLINT_DISABLED_WARNINGS)) |
| results.extend(_CheckJson(input_api, output_api)) |
| + results.extend(_CheckWprShaFiles(input_api, output_api)) |
| finally: |
| sys.path = old_sys_path |
| return results |
| +def _CheckWprShaFiles(input_api, output_api): |
| + """Check whether the wpr sha files have matching URLs.""" |
| + from telemetry.util import cloud_storage |
| + results = [] |
| + for affected_file in input_api.AffectedFiles(include_deletes=False): |
| + filename = affected_file.AbsoluteLocalPath() |
| + if not filename.endswith('wpr.sha1'): |
| + continue |
| + is_wpr_file_uploaded = False |
|
slamm
2015/02/24 20:51:19
Not needed.
nednguyen
2015/02/24 20:57:46
Done.
|
| + expected_hash = cloud_storage.ReadHash(filename) |
| + is_wpr_file_uploaded = any( |
| + cloud_storage.Exists(bucket, expected_hash) |
| + for bucket in cloud_storage.BUCKET_ALIASES.itervalues()) |
| + if not is_wpr_file_uploaded: |
| + wpr_filename = filename[:-5] |
| + results.append(output_api.PresubmitError( |
| + 'There is no URLs matched for wpr sha file %s.\n' |
| + 'You can upload your new wpr archive file with the command:\n' |
| + 'depot_tools/upload_to_google_storage.py --bucket ' |
| + '<Your pageset\'s bucket> %s.\nFor more info: see ' |
| + 'http://www.chromium.org/developers/telemetry/' |
| + 'record_a_page_set#TOC-Upload-the-recording-to-Cloud-Storage' % |
| + (filename, wpr_filename))) |
| + return results |
| + |
| + |
| def _CheckJson(input_api, output_api): |
| """Checks whether JSON files in this change can be parsed.""" |
| for affected_file in input_api.AffectedFiles(include_deletes=False): |