Bug 1657769 - [ci] Run talos bcv on -qr platforms when software webrender is enabled, r=jmaher

From mwoodrow:

bcv is 'basic compositor video', which explicitly disables acceleration using a
pref and then runs some video tests. For normal -qr platforms this isn't
useful, since the pref would disable WebRender, and it'd be an identical
configuation to the non-qr variant.

When software webrender is enabled, disabling acceleration won't disable WR,
and test remains useful (testing video performance of the software webrender
configuration).

The baseline I want to compare against here is the non-qr bcv, to see if
webrender-software is worse than layers-software.

Differential Revision: https://phabricator.services.mozilla.com/D88192
This commit is contained in:
Andrew Halberstadt 2020-08-25 21:30:43 +00:00
Родитель b7b4be8d91
Коммит 99654d61b3
2 изменённых файлов: 19 добавлений и 2 удалений

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

@ -60,7 +60,10 @@ talos-bcv:
default: ['fission']
run-on-projects:
by-test-platform:
.*(?:shippable-qr|-qr)/.*: []
.*(?:shippable-qr|-qr)/.*:
by-variant:
webrender-sw: ['trunk']
default: []
(linux|windows|macos)(?!.*shippable)(?!.*-qr).*: []
default: ['mozilla-beta', 'trunk']
tier:

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

@ -387,6 +387,7 @@ test_description_schema = Schema({
Optional('run-on-projects'): optionally_keyed_by(
'test-platform',
'test-name',
'variant',
Any([text_type], 'built-projects')),
# When set only run on projects where the build would already be running.
@ -1054,7 +1055,7 @@ def handle_keyed_by(config, tasks):
]
for task in tasks:
for field in fields:
resolve_keyed_by(task, field, item_name=task['test-name'],
resolve_keyed_by(task, field, item_name=task['test-name'], defer=['variant'],
project=config.params['project'])
yield task
@ -1366,6 +1367,19 @@ def split_variants(config, tasks):
yield merge(taskv, variant.get('merge', {}))
@transforms.add
def handle_keyed_by_variant(config, tasks):
"""Resolve fields that can be keyed by platform, etc."""
fields = [
'run-on-projects',
]
for task in tasks:
for field in fields:
resolve_keyed_by(task, field, item_name=task['test-name'],
variant=task['attributes'].get('unittest_variant'))
yield task
@transforms.add
def handle_fission_attributes(config, tasks):
"""Handle run_on_projects for fission tasks."""