From 6f2ed93ef31ba8cf879cf218d64cc3c8927fb438 Mon Sep 17 00:00:00 2001 From: Gregory Mierzwinski Date: Fri, 6 Nov 2020 10:10:04 -0500 Subject: [PATCH] [fenix] Bug 1670284 - Enable webrender for all tests and run a subset without webrender. (https://github.com/mozilla-mobile/fenix/pull/16325) * Enable webrender for all tests and run a subset without webrender. * Run tests on PR. * Change task labels for webrender-enabled tests. * Move transform logic to after the main transform. * Reformat group symbol. * Check if extra field is empty. * Try a different method for treeherder info. * Fix up assignment issue. * Reformat symbol field instead of groupSymbol. * Add new task group to config. * Change the platform name for webrender tasks. * Undo testing changes. * Undo platform naming changes. --- taskcluster/ci/browsertime/kind.yml | 8 ++++++++ taskcluster/ci/config.yml | 1 + .../fenix_taskgraph/transforms/browsertime.py | 17 +++++++++++++++++ 3 files changed, 26 insertions(+) diff --git a/taskcluster/ci/browsertime/kind.yml b/taskcluster/ci/browsertime/kind.yml index 732d89151..20bb3ea16 100644 --- a/taskcluster/ci/browsertime/kind.yml +++ b/taskcluster/ci/browsertime/kind.yml @@ -72,6 +72,7 @@ job-defaults: type: directory run-visual-metrics: True chimera: True + web-render-only: True run: using: run-task checkout: false @@ -106,6 +107,7 @@ jobs: tp6m-2-cold: test-name: google + web-render-only: False treeherder: symbol: 'Btime(tp6m-2-c)' @@ -126,6 +128,7 @@ jobs: tp6m-6-cold: test-name: amazon-search + web-render-only: False treeherder: symbol: 'Btime(tp6m-6-c)' @@ -151,6 +154,7 @@ jobs: tp6m-11-cold: test-name: microsoft-support + web-render-only: False treeherder: symbol: 'Btime(tp6m-11-c)' @@ -161,6 +165,7 @@ jobs: tp6m-13-cold: test-name: espn + web-render-only: False treeherder: symbol: 'Btime(tp6m-13-c)' @@ -171,6 +176,7 @@ jobs: tp6m-15-cold: test-name: facebook + web-render-only: False treeherder: symbol: 'Btime(tp6m-15-c)' @@ -196,6 +202,7 @@ jobs: tp6m-20-cold: test-name: youtube-watch + web-render-only: False treeherder: symbol: 'Btime(tp6m-20-c)' @@ -216,6 +223,7 @@ jobs: tp6m-24-cold: test-name: allrecipes + web-render-only: False treeherder: symbol: 'Btime(tp6m-24-c)' diff --git a/taskcluster/ci/config.yml b/taskcluster/ci/config.yml index bb332d2b0..f31059ac2 100644 --- a/taskcluster/ci/config.yml +++ b/taskcluster/ci/config.yml @@ -4,6 +4,7 @@ treeherder: group-names: 'beta': 'Beta-related tasks with same APK configuration as Fennec' 'Btime': 'Raptor-Browsertime tests' + 'Btime-wr': 'Raptor-Browsertime tests with webrender enabled' 'bump': 'Bump dependencies' 'debug': 'Builds made for testing' 'Fetch': 'Fetch and store content' diff --git a/taskcluster/fenix_taskgraph/transforms/browsertime.py b/taskcluster/fenix_taskgraph/transforms/browsertime.py index ba11e6f82..9f5e91572 100644 --- a/taskcluster/fenix_taskgraph/transforms/browsertime.py +++ b/taskcluster/fenix_taskgraph/transforms/browsertime.py @@ -110,6 +110,23 @@ def build_browsertime_task(config, tasks): yield task +@transforms.add +def enable_webrender(config, tasks): + for task in tasks: + if not task.pop("web-render-only", False): + newtask = copy.deepcopy(task) + yield newtask + task["run"]["command"].append("--enable-webrender") + task["name"] += "-wr" + task["description"] += "-wr" + + # Setup group symbol + group, sym = task["treeherder"]["symbol"].split("(") + task["treeherder"]["symbol"] = "{}-wr({})".format(group, sym[:-1]) + + yield task + + @transforms.add def fill_email_data(config, tasks): product_name = config.graph_config['taskgraph']['repositories']['mobile']['name']