Bug 1587826 - [ci] Use a transform to split raptor cold pageload tests r=perftest-reviewers,rwood

Differential Revision: https://phabricator.services.mozilla.com/D48981

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Andrew Halberstadt 2019-10-16 13:46:45 +00:00
parent c858034fd8
commit 17530b8dcc
4 changed files with 41 additions and 33 deletions

View File

@ -53,20 +53,6 @@ job-defaults:
browsertime-tp6m-1:
description: "Raptor (browsertime) tp6m-1"
apps: ["fenix", "geckoview", "refbrow"]
cold: true
treeherder-symbol: Btime(tp6m-1)
mozharness:
extra-options:
- --test=raptor-tp6m-1
browsertime-tp6m-1-cold:
description: "Raptor (browsertime) tp6m-1 cold page-load"
apps: ["fenix", "geckoview", "refbrow"]
treeherder-symbol: Btime(tp6m-c-1)
max-run-time:
by-app:
fenix: 1800
geckoview: 2700
refbrow: 1800
mozharness:
extra-options:
- --test=raptor-tp6m-1-cold
raptor-test: raptor-tp6m-1

View File

@ -1015,26 +1015,17 @@ raptor-jetstream2-firefox-profiling:
browsertime-tp6-1:
description: "Raptor (browsertime) tp6-1"
raptor-test: raptor-tp6-1
run-on-projects: ['integration', 'try']
apps: ["firefox"]
variants: ["fission"]
cold:
by-app:
firefox: true
default: false
treeherder-symbol: Btime(tp6-1)
max-run-time: 3000
tier: 3
mozharness:
extra-options:
- --browsertime
- --test=raptor-tp6-1
browsertime-tp6-1-cold:
description: "Raptor (browsertime) tp6-1 cold page-load"
run-on-projects: ['integration', 'try']
apps: ["firefox"]
variants: ["fission"]
treeherder-symbol: Btime(tp6-c-1)
max-run-time: 3000
tier: 3
mozharness:
extra-options:
- --browsertime
- --test=raptor-tp6-1-cold

View File

@ -891,12 +891,9 @@ android-hw-arm7-raptor-nightly:
browsertime:
- browsertime-tp6-1
- browsertime-tp6-1-cold
android-hw-aarch64-browsertime:
- browsertime-tp6m-1
- browsertime-tp6m-1-cold
android-hw-arm7-browsertime:
- browsertime-tp6m-1
- browsertime-tp6m-1-cold

View File

@ -26,6 +26,7 @@ raptor_description_schema = Schema({
'test-platform',
[basestring]
),
Optional('raptor-test'): basestring,
Optional('activity'): optionally_keyed_by(
'app',
basestring
@ -34,6 +35,10 @@ raptor_description_schema = Schema({
'app',
basestring
),
Optional('cold'): optionally_keyed_by(
'test-platform', 'app',
bool,
),
# Configs defined in the 'test_description_schema'.
Optional('max-run-time'): optionally_keyed_by(
'app',
@ -101,6 +106,7 @@ def handle_keyed_by_app(config, tests):
fields = [
'activity',
'binary-path',
'cold',
'max-run-time',
'run-on-projects',
'target',
@ -111,6 +117,31 @@ def handle_keyed_by_app(config, tests):
yield test
@transforms.add
def split_cold(config, tests):
for test in tests:
cold = test.pop('cold', False)
if not cold:
yield test
continue
orig = deepcopy(test)
yield orig
assert 'raptor-test' in test
test['description'] += " using cold pageload"
test['raptor-test'] += '-cold'
test['max-run-time'] = 3000
test['test-name'] += '-cold'
test['try-name'] += '-cold'
group, symbol = split_symbol(test['treeherder-symbol'])
symbol += '-c'
test['treeherder-symbol'] = join_symbol(group, symbol)
yield test
@transforms.add
def add_extra_options(config, tests):
for test in tests:
@ -125,6 +156,9 @@ def add_extra_options(config, tests):
if 'binary-path' in test:
extra_options.append('--binary-path={}'.format(test.pop('binary-path')))
if 'raptor-test' in test:
extra_options.append('--test={}'.format(test.pop('raptor-test')))
if test['require-signed-extensions']:
extra_options.append('--is-release-build')