Commit 6838ddb6 authored by Ned Nguyen's avatar Ned Nguyen Committed by Commit Bot

Add swarming dimension validation to prevent typo errors

Change-Id: Ida3dfde73bcf3196b91c1f68ceca31a12da0273b
Reviewed-on: https://chromium-review.googlesource.com/1044530Reviewed-by: default avatarEmily Hanley <eyaich@chromium.org>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#556138}
parent 34077ec2
...@@ -60,6 +60,23 @@ def add_builder(waterfall, name, additional_compile_targets=None): ...@@ -60,6 +60,23 @@ def add_builder(waterfall, name, additional_compile_targets=None):
return waterfall return waterfall
_VALID_SWARMING_DIMENSIONS = {
'gpu', 'device_ids', 'os', 'pool', 'perf_tests', 'perf_tests_with_args'}
_VALID_PERF_POOLS = {
'Chrome-perf', 'chrome.tests.perf', 'chrome.tests.perf-webview'}
def _ValidateSwarmingDimension(tester_name, swarming_dimensions):
for dimension in swarming_dimensions:
for k, v in dimension.iteritems():
if k not in _VALID_SWARMING_DIMENSIONS:
raise ValueError('Invalid swarming dimension in %s: %s' % (
tester_name, k))
if k == 'pool' and v not in _VALID_PERF_POOLS:
raise ValueError('Invalid perf pool %s in %s' % (v, tester_name))
def add_tester(waterfall, name, perf_id, platform, target_bits=64, def add_tester(waterfall, name, perf_id, platform, target_bits=64,
num_host_shards=1, num_device_shards=1, swarming=None, num_host_shards=1, num_device_shards=1, swarming=None,
replace_system_webview=False): replace_system_webview=False):
...@@ -81,6 +98,7 @@ def add_tester(waterfall, name, perf_id, platform, target_bits=64, ...@@ -81,6 +98,7 @@ def add_tester(waterfall, name, perf_id, platform, target_bits=64,
} }
if swarming: if swarming:
_ValidateSwarmingDimension(name, swarming)
waterfall['testers'][name]['swarming_dimensions'] = swarming waterfall['testers'][name]['swarming_dimensions'] = swarming
waterfall['testers'][name]['swarming'] = True waterfall['testers'][name]['swarming'] = True
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment