Bug 1388478 - Use job-defaults to simplify 'test' configs where appropriate, r?jmaher draft
authorAndrew Halberstadt <ahalberstadt@mozilla.com>
Tue, 17 Oct 2017 16:46:06 -0400
changeset 682847 c9d91b34d817ff02a8bb365e7764606be2c4156a
parent 682846 dcc2ddfbc2c70f50790adef9801c1eef8734d990
child 736462 aee3406d212388e74b9d4592ec3e2bc4ab6422fa
push id85180
push userahalberstadt@mozilla.com
push dateWed, 18 Oct 2017 21:27:14 +0000
reviewersjmaher
bugs1388478
milestone58.0a1
Bug 1388478 - Use job-defaults to simplify 'test' configs where appropriate, r?jmaher This is mostly a refactor, moving shared defaults to the top of the file where appropriate. The only change this makes, is modifying a couple of the macosx talos tasks to use the osx mozharness config. They were previously using the linux config which was likely a bug. MozReview-Commit-ID: 2c0muPZrHZ
taskcluster/ci/test/awsy.yml
taskcluster/ci/test/compiled.yml
taskcluster/ci/test/firefox-ui.yml
taskcluster/ci/test/marionette.yml
taskcluster/ci/test/talos.yml
taskcluster/ci/test/web-platform.yml
--- a/taskcluster/ci/test/awsy.yml
+++ b/taskcluster/ci/test/awsy.yml
@@ -1,67 +1,45 @@
-awsy:
-    description: "Are we slim yet"
+job-defaults:
     suite: awsy
-    treeherder-symbol: tc-SY(sy)
     max-run-time: 7200
     instance-size: xlarge
     allow-software-gl-layers: false
-    run-on-projects:
-        by-test-platform:
-            .*-devedition/.*: [] # don't run on devedition
-            default: built-projects
     mozharness:
         script: awsy_script.py
         config:
             by-test-platform:
                 windows.*/opt:
                     - awsy/taskcluster_windows_config.py
                 macosx.*/opt:
                     - awsy/macosx_config.py
                 default:
                     - awsy/linux_config.py
 
+awsy:
+    description: "Are we slim yet"
+    treeherder-symbol: tc-SY(sy)
+    run-on-projects:
+        by-test-platform:
+            .*-devedition/.*: [] # don't run on devedition
+            default: built-projects
+
 awsy-stylo-disabled:
     description: "Are we slim yet for Stylo disabled"
-    suite: awsy
     treeherder-symbol: tc-SYsd(sy)
-    max-run-time: 7200
-    instance-size: xlarge
-    allow-software-gl-layers: false
     run-on-projects:
         by-test-platform:
             .*-devedition/.*: [] # don't run on devedition
             default: built-projects
     mozharness:
-        script: awsy_script.py
-        config:
-            by-test-platform:
-                windows.*:
-                    - awsy/taskcluster_windows_config.py
-                macosx.*:
-                    - awsy/macosx_config.py
-                linux.*:
-                    - awsy/linux_config.py
         extra-options:
             - --disable-stylo
 
 awsy-stylo-sequential:
     description: "Are we slim yet for Stylo sequential"
-    suite: awsy
     treeherder-symbol: tc-SYss(sy)
-    max-run-time: 7200
-    instance-size: xlarge
-    allow-software-gl-layers: false
     run-on-projects:
         by-test-platform:
             .*-devedition/.*: [] # don't run on devedition
             default: built-projects
     mozharness:
-        script: awsy_script.py
-        config:
-            # Only run on Linux64.
-            by-test-platform:
-                linux.*:
-                    - awsy/linux_config.py
         extra-options:
             - --single-stylo-traversal
-
--- a/taskcluster/ci/test/compiled.yml
+++ b/taskcluster/ci/test/compiled.yml
@@ -1,13 +1,14 @@
+job-defaults:
+    e10s: false
 
 cppunit:
     description: "CPP Unit Tests"
     suite: cppunittest
-    e10s: false
     treeherder-symbol: tc(Cpp)
     run-on-projects:
         by-test-platform:
             windows10-64-asan/opt: []  # as an exception to windows.*
             linux64-qr/.*: ['mozilla-central', 'try']
             default: built-projects
     mozharness:
         by-test-platform:
@@ -35,17 +36,16 @@ cppunit:
     tier:
         by-test-platform:
             windows10-64-asan.*: 3
             default: default
 
 gtest:
     description: "GTests run"
     suite: gtest
-    e10s: false
     treeherder-symbol: tc(GTest)
     instance-size: xlarge
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             windows.*-pgo/.*: [] # permafails on pgo
             windows.*-nightly/.*: [] # permafails on nightly too
             .*-devedition/.*: [] # don't run on devedition
@@ -69,17 +69,16 @@ gtest:
             windows7-32-pgo.*: 3
             windows10-64-pgo.*: 3
             windows10-64-asan.*: 3
             default: default
 
 jittest:
     description: "JIT Test run"
     suite: jittest/jittest-chunked
-    e10s: false
     treeherder-symbol: tc(Jit)
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             default: built-projects
     chunks:
         by-test-platform:
             windows.*: 1
--- a/taskcluster/ci/test/firefox-ui.yml
+++ b/taskcluster/ci/test/firefox-ui.yml
@@ -1,49 +1,40 @@
-firefox-ui-functional-local:
-    description: "Firefox-ui-tests functional run"
-    suite: "firefox-ui/functional local"
-    treeherder-symbol: tc-Fxfn-l(en-US)
+job-defaults:
     max-run-time: 5400
     mozharness:
         script: firefox_ui_tests/functional.py
         config:
             by-test-platform:
                 windows.*:
                     - firefox_ui_tests/taskcluster_windows.py
                 macosx.*:
                     - firefox_ui_tests/taskcluster.py
                     - firefox_ui_tests/taskcluster_mac.py
                 linux.*:
                     - firefox_ui_tests/taskcluster.py
                     - remove_executables.py
+
+firefox-ui-functional-local:
+    description: "Firefox-ui-tests functional run"
+    suite: "firefox-ui/functional local"
+    treeherder-symbol: tc-Fxfn-l(en-US)
+    mozharness:
         extra-options:
             - "--tag"
             - "local"
     tier:
         by-test-platform:
             windows10-64-asan.*: 3
             default: default
 
 firefox-ui-functional-remote:
     description: "Firefox-ui-tests functional run"
     suite: "firefox-ui/functional remote"
     treeherder-symbol: tc-Fxfn-r(en-US)
-    max-run-time: 5400
     mozharness:
-        script: firefox_ui_tests/functional.py
-        config:
-            by-test-platform:
-                windows.*:
-                    - firefox_ui_tests/taskcluster_windows.py
-                macosx.*:
-                    - firefox_ui_tests/taskcluster.py
-                    - firefox_ui_tests/taskcluster_mac.py
-                linux.*:
-                    - firefox_ui_tests/taskcluster.py
-                    - remove_executables.py
         extra-options:
             - "--tag"
             - "remote"
     tier:
         by-test-platform:
             windows10-64-asan.*: 3
             default: 2
--- a/taskcluster/ci/test/marionette.yml
+++ b/taskcluster/ci/test/marionette.yml
@@ -1,11 +1,13 @@
+job-defaults:
+    suite: marionette
+
 marionette:
     description: "Marionette unittest run"
-    suite: marionette
     treeherder-symbol: tc(Mn)
     max-run-time:
         by-test-platform:
             android.*: 3600
             default: 5400
     instance-size:
         by-test-platform:
             android.*: xlarge
@@ -39,21 +41,19 @@ marionette:
                             - marionette/prod_config.py
                             - marionette/mac_taskcluster_config.py
                         default:
                             - marionette/prod_config.py
                             - remove_executables.py
 
 marionette-headless:
     description: "Marionette headless unittest run"
-    suite: marionette
     treeherder-symbol: tc(MnH)
     max-run-time: 5400
     instance-size: default
-    chunks: 1
     mozharness:
         script: marionette.py
         no-read-buildbot-config: true
         config:
             by-test-platform:
                 windows.*:
                     - marionette/windows_taskcluster_config.py
                 macosx.*:
--- a/taskcluster/ci/test/talos.yml
+++ b/taskcluster/ci/test/talos.yml
@@ -1,838 +1,441 @@
-talos-chrome:
-    description: "Talos chrome"
-    suite: talos
-    try-name: chromez
-    treeherder-symbol: tc-T(c)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=chromez
-            - --add-option
-            - --webServer,localhost
-
-talos-chrome-stylo-disabled:
-    description: "Talos Stylo disabled chrome"
-    suite: talos
-    try-name: chromez-stylo-disabled
-    treeherder-symbol: tc-Tsd(c)
-    virtualization: hardware
-    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=chromez-stylo-disabled
-            - --add-option
-            - --webServer,localhost
-
-talos-dromaeojs:
-    description: "Talos dromaeojs"
-    suite: talos
-    try-name: dromaeojs
-    treeherder-symbol: tc-T(d)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=dromaeojs
-            - --add-option
-            - --webServer,localhost
-
-talos-dromaeojs-stylo-disabled:
-    description: "Talos Stylo disabled dromaeojs"
-    suite: talos
-    try-name: dromaeojs-stylo-disabled
-    treeherder-symbol: tc-Tsd(d)
-    virtualization: hardware
-    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+job-defaults:
     max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=dromaeojs-stylo-disabled
-            - --add-option
-            - --webServer,localhost
-
-talos-g1:
-    description: "Talos g1"
     suite: talos
-    try-name: g1
-    treeherder-symbol: tc-T(g1)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 7200
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g1
-            - --add-option
-            - --webServer,localhost
-
-talos-g1-stylo-disabled:
-    description: "Talos Stylo disabled g1"
-    suite: talos
-    try-name: g1-stylo-disabled
-    treeherder-symbol: tc-Tsd(g1)
-    virtualization: hardware
-    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 7200
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g1-stylo-disabled
-            - --add-option
-            - --webServer,localhost
-
-talos-g2:
-    description: "Talos g2"
-    suite: talos
-    try-name: g2
-    treeherder-symbol: tc-T(g2)
-    virtualization: hardware
-    max-run-time: 7200
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g2
-            - --add-option
-            - --webServer,localhost
-
-talos-g2-stylo-disabled:
-    description: "Talos Stylo disabled g2"
-    suite: talos
-    try-name: g2-stylo-disabled
-    treeherder-symbol: tc-Tsd(g2)
     virtualization: hardware
-    max-run-time: 7200
-    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g2-stylo-disabled
-            - --add-option
-            - --webServer,localhost
-
-talos-g3:
-    description: "Talos g3"
-    suite: talos
-    try-name: g3
-    treeherder-symbol: tc-T(g3)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta','mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g3
-            - --add-option
-            - --webServer,localhost
-
-talos-g3-stylo-disabled:
-    description: "Talos Stylo disabled g3"
-    suite: talos
-    try-name: g3-stylo-disabled
-    treeherder-symbol: tc-Tsd(g3)
-    virtualization: hardware
-    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g3-stylo-disabled
-            - --add-option
-            - --webServer,localhost
-
-talos-g4:
-    description: "Talos g4"
-    suite: talos
-    try-name: g4
-    treeherder-symbol: tc-T(g4)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta','mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g4
-            - --add-option
-            - --webServer,localhost
-
-talos-g4-stylo-disabled:
-    description: "Talos Stylo disabled g4"
-    suite: talos
-    try-name: g4-stylo-disabled
-    treeherder-symbol: tc-Tsd(g4)
-    virtualization: hardware
-    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=g4-stylo-disabled
-            - --add-option
-            - --webServer,localhost
-
-talos-g5:
-    description: "Talos g5"
-    suite: talos
-    try-name: g5
-    treeherder-symbol: tc-T(g5)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-                    - remove_executables.py
-        extra-options:
-            - --suite=g5
-            - --add-option
-            - --webServer,localhost
-
-talos-g5-stylo-disabled:
-    description: "Talos Stylo disabled g5"
-    suite: talos
-    try-name: g5-stylo-disabled
-    treeherder-symbol: tc-Tsd(g5)
-    virtualization: hardware
-    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-                    - remove_executables.py
-        extra-options:
-            - --suite=g5-stylo-disabled
-            - --add-option
-            - --webServer,localhost
-
-talos-h1:
-    description: "Talos h1"
-    suite: talos
-    try-name: h1
-    treeherder-symbol: tc-T(h1)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
-    mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
-        extra-options:
-            - --suite=h1
-            - --add-option
-            - --webServer,localhost
-
-talos-h2:
-    description: "Talos h2"
-    suite: talos
-    try-name: h2
-    treeherder-symbol: tc-T(h2)
-    virtualization: hardware
-    run-on-projects:
-        by-test-platform:
-            linux64-qr/.*: ['mozilla-central', 'try']
-            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
         script: talos_script.py
         no-read-buildbot-config: true
         config:
             by-test-platform:
                 macosx.*:
                     - talos/mac_config.py
                 windows.*:
                     - talos/windows_config.py
                 default:
                     - talos/linux_config.py
+
+talos-chrome:
+    description: "Talos chrome"
+    try-name: chromez
+    treeherder-symbol: tc-T(c)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
+        extra-options:
+            - --suite=chromez
+            - --add-option
+            - --webServer,localhost
+
+talos-chrome-stylo-disabled:
+    description: "Talos Stylo disabled chrome"
+    try-name: chromez-stylo-disabled
+    treeherder-symbol: tc-Tsd(c)
+    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+    mozharness:
+        extra-options:
+            - --suite=chromez-stylo-disabled
+            - --add-option
+            - --webServer,localhost
+
+talos-dromaeojs:
+    description: "Talos dromaeojs"
+    try-name: dromaeojs
+    treeherder-symbol: tc-T(d)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
+        extra-options:
+            - --suite=dromaeojs
+            - --add-option
+            - --webServer,localhost
+
+talos-dromaeojs-stylo-disabled:
+    description: "Talos Stylo disabled dromaeojs"
+    try-name: dromaeojs-stylo-disabled
+    treeherder-symbol: tc-Tsd(d)
+    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+    mozharness:
+        extra-options:
+            - --suite=dromaeojs-stylo-disabled
+            - --add-option
+            - --webServer,localhost
+
+talos-g1:
+    description: "Talos g1"
+    try-name: g1
+    treeherder-symbol: tc-T(g1)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    max-run-time: 7200
+    mozharness:
+        extra-options:
+            - --suite=g1
+            - --add-option
+            - --webServer,localhost
+
+talos-g1-stylo-disabled:
+    description: "Talos Stylo disabled g1"
+    try-name: g1-stylo-disabled
+    treeherder-symbol: tc-Tsd(g1)
+    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+    max-run-time: 7200
+    mozharness:
+        extra-options:
+            - --suite=g1-stylo-disabled
+            - --add-option
+            - --webServer,localhost
+
+talos-g2:
+    description: "Talos g2"
+    try-name: g2
+    treeherder-symbol: tc-T(g2)
+    max-run-time: 7200
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
+        extra-options:
+            - --suite=g2
+            - --add-option
+            - --webServer,localhost
+
+talos-g2-stylo-disabled:
+    description: "Talos Stylo disabled g2"
+    try-name: g2-stylo-disabled
+    treeherder-symbol: tc-Tsd(g2)
+    max-run-time: 7200
+    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+    mozharness:
+        extra-options:
+            - --suite=g2-stylo-disabled
+            - --add-option
+            - --webServer,localhost
+
+talos-g3:
+    description: "Talos g3"
+    try-name: g3
+    treeherder-symbol: tc-T(g3)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta','mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
+        extra-options:
+            - --suite=g3
+            - --add-option
+            - --webServer,localhost
+
+talos-g3-stylo-disabled:
+    description: "Talos Stylo disabled g3"
+    try-name: g3-stylo-disabled
+    treeherder-symbol: tc-Tsd(g3)
+    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+    mozharness:
+        extra-options:
+            - --suite=g3-stylo-disabled
+            - --add-option
+            - --webServer,localhost
+
+talos-g4:
+    description: "Talos g4"
+    try-name: g4
+    treeherder-symbol: tc-T(g4)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta','mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
+        extra-options:
+            - --suite=g4
+            - --add-option
+            - --webServer,localhost
+
+talos-g4-stylo-disabled:
+    description: "Talos Stylo disabled g4"
+    try-name: g4-stylo-disabled
+    treeherder-symbol: tc-Tsd(g4)
+    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+    mozharness:
+        extra-options:
+            - --suite=g4-stylo-disabled
+            - --add-option
+            - --webServer,localhost
+
+talos-g5:
+    description: "Talos g5"
+    try-name: g5
+    treeherder-symbol: tc-T(g5)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
+        config:
+            by-test-platform:
+                default:
+                    - remove_executables.py
+        extra-options:
+            - --suite=g5
+            - --add-option
+            - --webServer,localhost
+
+talos-g5-stylo-disabled:
+    description: "Talos Stylo disabled g5"
+    try-name: g5-stylo-disabled
+    treeherder-symbol: tc-Tsd(g5)
+    run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
+    mozharness:
+        config:
+            by-test-platform:
+                default:
+                    - remove_executables.py
+        extra-options:
+            - --suite=g5-stylo-disabled
+            - --add-option
+            - --webServer,localhost
+
+talos-h1:
+    description: "Talos h1"
+    try-name: h1
+    treeherder-symbol: tc-T(h1)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
+        extra-options:
+            - --suite=h1
+            - --add-option
+            - --webServer,localhost
+
+talos-h2:
+    description: "Talos h2"
+    try-name: h2
+    treeherder-symbol: tc-T(h2)
+    run-on-projects:
+        by-test-platform:
+            linux64-qr/.*: ['mozilla-central', 'try']
+            default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
+    mozharness:
         extra-options:
             - --suite=h2
             - --add-option
             - --webServer,localhost
 
 talos-other:
     description: "Talos other"
-    suite: talos
     try-name: other
     treeherder-symbol: tc-T(o)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             default: ['mozilla-beta','mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=other
             - --add-option
             - --webServer,localhost
 
 talos-other-stylo-disabled:
     description: "Talos Stylo disabled other"
-    suite: talos
     try-name: other-stylo-disabled
     treeherder-symbol: tc-Tsd(o)
-    virtualization: hardware
     run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=other-stylo-disabled
             - --add-option
             - --webServer,localhost
 
 talos-perf-reftest:
     description: "Talos perf-reftest"
-    suite: talos
     try-name: perf-reftest
     treeherder-symbol: tc-T(p)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             default: ['mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=perf-reftest
 
 talos-perf-reftest-singletons:
     description: "Talos perf-reftest singletons"
-    suite: talos
     try-name: perf-reftest-singletons
     treeherder-symbol: tc-T(ps)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             default: ['mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=perf-reftest-singletons
 
 talos-perf-reftest-singletons-stylo-disabled:
     description: "Talos Stylo disabled perf-reftest singletons"
-    suite: talos
     try-name: perf-reftest-singletons-stylo-disabled
     treeherder-symbol: tc-Tsd(ps)
-    virtualization: hardware
     run-on-projects: ['mozilla-central', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=perf-reftest-singletons-stylo-disabled
 
 talos-perf-reftest-stylo-disabled:
     description: "Talos Stylo disabled perf-reftest"
-    suite: talos
     try-name: perf-reftest-stylo-disabled
     treeherder-symbol: tc-Tsd(p)
-    virtualization: hardware
     run-on-projects: ['mozilla-central', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=perf-reftest-stylo-disabled
 
 talos-speedometer:
     description: "Talos speedometer"
-    suite: talos
     try-name: speedometer
     treeherder-symbol: tc-T(sp)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=speedometer
             - --add-option
             - --webServer,localhost
 
 talos-speedometer-stylo-disabled:
     description: "Talos Stylo disabled speedometer"
-    suite: talos
     try-name: speedometer-stylo-disabled
     treeherder-symbol: tc-Tsd(sp)
-    virtualization: hardware
     run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=speedometer-stylo-disabled
             - --add-option
             - --webServer,localhost
 
 talos-svgr:
     description: "Talos svgr"
-    suite: talos
     try-name: svgr
     treeherder-symbol: tc-T(s)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=svgr
             - --add-option
             - --webServer,localhost
 
 talos-svgr-stylo-disabled:
     description: "Talos Stylo disabled svgr"
-    suite: talos
     try-name: svgr-stylo-disabled
     treeherder-symbol: tc-Tsd(s)
-    virtualization: hardware
     run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=svgr-stylo-disabled
             - --add-option
             - --webServer,localhost
 
 talos-tp5o:
     description: "Talos tp5o"
-    suite: talos
     try-name: tp5o
     treeherder-symbol: tc-T(tp)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
             default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=tp5o
             - --add-option
             - --webServer,localhost
 
 talos-tp5o-stylo-disabled:
     description: "Talos Stylo disabled tp5o"
-    suite: talos
     try-name: tp5o-stylo-disabled
     treeherder-symbol: tc-Tsd(tp)
-    virtualization: hardware
     run-on-projects: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=tp5o-stylo-disabled
             - --add-option
             - --webServer,localhost
 
 talos-tp6:
     description: "Talos Tp6"
-    suite: talos
     try-name: tp6
     treeherder-symbol: tc-T(tp6)
     run-on-projects:
         by-test-platform:
             windows.*: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
             macosx.*: ['mozilla-beta', 'autoland', 'try']
             default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=tp6
             - --add-option
             - --webServer,localhost
 
 talos-tp6-stylo-disabled:
     description: "Talos Stylo disabled Tp6"
-    suite: talos
     try-name: tp6-stylo-disabled
     treeherder-symbol: tc-Tsd(tp6)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             windows.*: ['mozilla-beta', 'mozilla-central', 'try']
             macosx.*: ['mozilla-beta', 'mozilla-central', 'try']
             default: ['mozilla-beta', 'mozilla-central', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=tp6-stylo-disabled
 
 talos-tp6-stylo-threads:
     description: "Talos Stylo sequential Tp6"
-    suite: talos
     try-name: tp6-stylo-threads
     treeherder-symbol: tc-Tss(tp6)
-    virtualization: hardware
     run-on-projects:
         by-test-platform:
             windows.*: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
             macosx.*: ['mozilla-beta', 'autoland', 'try']
             default: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=tp6-stylo-threads
 
 talos-xperf:
     description: "Talos xperf"
-    suite: talos
     try-name: xperf
     treeherder-symbol: tc-T(x)
     run-on-projects:
         by-test-platform:
             windows7-32.*: ['mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland', 'try']
             default: []
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=xperf
             - --add-option
             - --webServer,localhost
 
 talos-xperf-stylo-disabled:
     description: "Talos Stylo disabled xperf"
-    suite: talos
     try-name: xperf-stylo-disabled
     treeherder-symbol: tc-Tsd(x)
     run-on-projects:
         by-test-platform:
             windows7-32.*: ['mozilla-beta', 'mozilla-central', 'try']
             default: []
-    max-run-time: 3600
     mozharness:
-        script: talos_script.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                macosx.*:
-                    - talos/mac_config.py
-                windows.*:
-                    - talos/windows_config.py
-                default:
-                    - talos/linux_config.py
         extra-options:
             - --suite=xperf-stylo-disabled
             - --add-option
             - --webServer,localhost
-
--- a/taskcluster/ci/test/web-platform.yml
+++ b/taskcluster/ci/test/web-platform.yml
@@ -1,36 +1,40 @@
+job-defaults:
+    instance-size: xlarge
+    max-run-time: 5400
+    mozharness:
+        script: web_platform_tests.py
+        no-read-buildbot-config: true
+        config:
+            by-test-platform:
+                windows.*:
+                    - web_platform_tests/prod_config_windows_taskcluster.py
+                macosx.*:
+                    - web_platform_tests/prod_config.py
+                default:
+                    - web_platform_tests/prod_config.py
+                    - remove_executables.py
+
 web-platform-tests:
     description: "Web platform test run"
     suite: web-platform-tests
     treeherder-symbol: tc-W(wpt)
     chunks:
       by-test-platform:
         macosx64/opt: 5
         macosx64/debug: 10
         default: 12
     max-run-time: 7200
-    instance-size: xlarge
     e10s:
         by-test-platform:
             windows7-32/debug: both
             default: true
     mozharness:
-        script: web_platform_tests.py
-        no-read-buildbot-config: true
         chunked: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - web_platform_tests/prod_config_windows_taskcluster.py
-                macosx.*:
-                    - web_platform_tests/prod_config.py
-                default:
-                    - web_platform_tests/prod_config.py
-                    - remove_executables.py
         extra-options:
             - --test-type=testharness
 
 web-platform-tests-headless:
     description: "Web platform test headless run"
     suite: web-platform-tests
     treeherder-symbol: tc-W(wptH)
     chunks:
@@ -38,153 +42,88 @@ web-platform-tests-headless:
         macosx64/opt: 5
         macosx64/debug: 10
         default: 12
     e10s:
         by-test-platform:
             macosx.*: true
             default: true
     max-run-time: 7200
-    instance-size: xlarge
     run-on-projects: [] # disabled pending releng approval
     mozharness:
-        script: web_platform_tests.py
-        no-read-buildbot-config: true
         chunked: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - web_platform_tests/prod_config_windows_taskcluster.py
-                macosx.*:
-                    - web_platform_tests/prod_config.py
-                default:
-                    - web_platform_tests/prod_config.py
-                    - remove_executables.py
         extra-options:
             by-test-platform:
                 windows.*:
                     - --test-type=testharness
                     - --headless
                     - --headless-width=1024
                     - --headless-height=768
                 default:
                     - --test-type=testharness
                     - --headless
 
 web-platform-tests-reftests:
     description: "Web platform reftest run"
     suite: web-platform-tests-reftests
     treeherder-symbol: tc-W(Wr)
-    max-run-time: 5400
-    instance-size: xlarge
     chunks:
       by-test-platform:
         macosx.*: 1
         windows.*: 1
         default: 6
     e10s:
         by-test-platform:
             windows7-32/debug: both
             default: true
     mozharness:
-        script: web_platform_tests.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - web_platform_tests/prod_config_windows_taskcluster.py
-                macosx.*:
-                    - web_platform_tests/prod_config.py
-                default:
-                    - web_platform_tests/prod_config.py
-                    - remove_executables.py
         extra-options:
             - --test-type=reftest
 
 web-platform-tests-reftests-headless:
     description: "Web platform reftest headless run"
     suite: web-platform-tests-reftests
     treeherder-symbol: tc-W(WrH)
-    max-run-time: 5400
-    instance-size: xlarge
     chunks:
       by-test-platform:
         macosx.*: 1
         windows.*: 1
         default: 6
     e10s:
         by-test-platform:
             windows7-32/debug: both
             default: true
     run-on-projects: [] # disabled pending releng approval
     mozharness:
-        script: web_platform_tests.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - web_platform_tests/prod_config_windows_taskcluster.py
-                macosx.*:
-                    - web_platform_tests/prod_config.py
-                default:
-                    - web_platform_tests/prod_config.py
-                    - remove_executables.py
         extra-options:
             by-test-platform:
                 windows.*:
                     - --test-type=reftest
                     - --headless
                     - --headless-width=1024
                     - --headless-height=768
                 default:
                     - --test-type=reftest
 
 web-platform-tests-wdspec:
     description: "Web platform webdriver-spec run"
     suite: web-platform-tests-wdspec
     treeherder-symbol: tc-W(Wd)
-    max-run-time: 5400
-    instance-size: xlarge
     mozharness:
-        script: web_platform_tests.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - web_platform_tests/prod_config_windows_taskcluster.py
-                macosx.*:
-                    - web_platform_tests/prod_config.py
-                default:
-                    - web_platform_tests/prod_config.py
-                    - remove_executables.py
         extra-options:
             - --test-type=wdspec
 
 web-platform-tests-wdspec-headless:
     description: "Web platform webdriver-spec headless run"
     suite: web-platform-tests-wdspec
     treeherder-symbol: tc-W(WdH)
-    max-run-time: 5400
-    instance-size: xlarge
     run-on-projects: [] # disabled pending releng approval
     mozharness:
-        script: web_platform_tests.py
-        no-read-buildbot-config: true
-        config:
-            by-test-platform:
-                windows.*:
-                    - web_platform_tests/prod_config_windows_taskcluster.py
-                macosx.*:
-                    - web_platform_tests/prod_config.py
-                default:
-                    - web_platform_tests/prod_config.py
-                    - remove_executables.py
         extra-options:
             by-test-platform:
                 windows.*:
                     - --test-type=wdspec
                     - --headless
                     - --headless-width=1024
                     - --headless-height=768
                 default:
                     - --test-type=wdspec
                     - --headless
-