Bug 1696041 - [ci] Remove 'fission-tier' attribute from browsertime-desktop.yml, r=perftest-reviewers,sparky

This change causes a slight change in the taskgraph (see phabricator for diff).
Essentially it changes the optimization for 'browsertime-tp6-firefox' tasks
from 'skip-unless-expanded' to 'skip-unless-backstop'.  This change happened
because the 'apply_raptor_tier_optimization' transform did not take
'fission-tier' into account. Now that 'fission-tier' has merged with 'tier',
these tasks are being modified by this transform. In my view this change is a
desired outcome.

Differential Revision: https://phabricator.services.mozilla.com/D109662
This commit is contained in:
Andrew Halberstadt 2021-03-26 21:51:51 +00:00
Родитель 3a636fc4a5
Коммит 48f9a2f1fd
3 изменённых файлов: 37 добавлений и 20 удалений

Просмотреть файл

@ -15,7 +15,6 @@ job-defaults:
default: []
test-manifest-loader: null # don't load tests in the taskgraph
tier: 3
fission-tier: 3
virtualization: hardware
mozharness:
script: raptor_script.py
@ -44,7 +43,6 @@ browsertime-tp6:
<<: &tp6-defaults
apps: [firefox, chrome, chromium]
description: Raptor (browsertime) tp6 page-load tests
fission-tier: 2
fission-run-on-projects:
by-test-platform:
windows7.*: []
@ -106,9 +104,12 @@ browsertime-tp6:
- yandex
- youtube
tier:
by-app:
firefox: 2
default: 3
by-variant:
fission: 2
default:
by-app:
firefox: 2
default: 3
browsertime-tp6-essential:
<<: *tp6-defaults
@ -157,17 +158,20 @@ browsertime-benchmark:
apps: ["firefox"]
treeherder-symbol: Btime()
tier:
by-app:
firefox:
by-subtest:
motionmark-animometer: 1
default:
by-test-platform:
windows10-64-ref-hw-2017/opt: 2
windows10-64-ccov.*/.*: 3
linux64-ccov.*/.*: 3
default: 2
default: 2
by-variant:
fission: 3
default:
by-app:
firefox:
by-subtest:
motionmark-animometer: 1
default:
by-test-platform:
windows10-64-ref-hw-2017/opt: 2
windows10-64-ccov.*/.*: 3
linux64-ccov.*/.*: 3
default: 2
default: 2
fission-run-on-projects:
by-test-platform:
windows7.*: []
@ -218,7 +222,6 @@ browsertime-tp6-live:
<<: *tp6-defaults
description: Raptor (browsertime) tp6 on live-sites
fission-run-on-projects: []
fission-tier: 3
mozharness:
extra-options:
- --browser-cycles=15
@ -292,4 +295,8 @@ browsertime-tp6-profiling:
by-test-platform:
linux.*shippable[^-qr].*: ['mozilla-central']
default: []
tier:
by-variant:
fission: 2
default: 3
treeherder-symbol: Btime-Prof(tp6)

Просмотреть файл

@ -197,7 +197,9 @@ def split_page_load_by_url(config, tests):
# `chunk-number` and 'subtest' only exists when the task had a
# definition for `raptor-subtests`
chunk_number = test.pop("chunk-number", None)
subtest = test.pop("subtest", None)
subtest = test.get(
"subtest"
) # don't pop as some tasks need this value after splitting variants
subtest_symbol = test.pop("subtest-symbol", None)
if not chunk_number or not subtest:
@ -252,7 +254,9 @@ def add_extra_options(config, tests):
test["attributes"]["run-visual-metrics"] = True
if "app" in test:
extra_options.append("--app={}".format(test.pop("app")))
extra_options.append(
"--app={}".format(test["app"])
) # don't pop as some tasks need this value after splitting variants
if "activity" in test:
extra_options.append("--activity={}".format(test.pop("activity")))

Просмотреть файл

@ -411,7 +411,7 @@ test_description_schema = Schema(
),
# the sheriffing tier for this task (default: set based on test platform)
Optional("tier"): optionally_keyed_by(
"test-platform", "variant", Any(int, "default")
"test-platform", "variant", "app", "subtest", Any(int, "default")
),
# Same as `tier` except it only applies to Fission tasks. Fission tasks
# will ignore `tier` and non-Fission tasks will ignore `fission-tier`.
@ -599,6 +599,12 @@ test_description_schema = Schema(
},
# Opt-in to Python 3 support
Optional("python-3"): bool,
# Raptor / browsertime specific keys that need to be here to support
# using `by-key` after `by-variant`. Ideally these keys should not exist
# in the tests.py schema and instead we'd split variants before the raptor
# transforms need them. See bug 1700774.
Optional("app"): text_type,
Optional("subtest"): text_type,
}
)