Bug 1384905 - [tc-migration] Windows 8 should not be triggered on try (unless specified) r=Callek draft
authorJohan Lorenzo <jlorenzo@mozilla.com>
Thu, 27 Jul 2017 14:27:22 +0200
changeset 616846 41b5761cfefa08722b6e9b548c9f1fb1f7f236b9
parent 616647 e5693cea1ec944ca077c7a46c5f127c828a90f1b
child 639611 2efc0b4f2b75d2628184f40809543e140bd28c4c
push id70829
push userbmo:jlorenzo@mozilla.com
push dateThu, 27 Jul 2017 15:05:17 +0000
reviewersCallek
bugs1384905
milestone56.0a1
Bug 1384905 - [tc-migration] Windows 8 should not be triggered on try (unless specified) r=Callek MozReview-Commit-ID: 6y6cR8nIvV3
taskcluster/ci/test/tests.yml
taskcluster/taskgraph/try_option_syntax.py
--- a/taskcluster/ci/test/tests.yml
+++ b/taskcluster/ci/test/tests.yml
@@ -66,16 +66,19 @@ crashtest:
     treeherder-symbol: tc-R(C)
     instance-size:
         by-test-platform:
             android.*: xlarge
             default: default
     docker-image: {"in-tree": "desktop1604-test"}
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     chunks:
         by-test-platform:
@@ -421,16 +424,19 @@ mochitest:
     max-run-time:
         by-test-platform:
             android-4.3-arm7-api-15/debug: 10800
             linux64-jsdcov/opt: 10800
             default: 5400
     allow-software-gl-layers: false
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     mozharness:
         by-test-platform:
@@ -516,16 +522,19 @@ mochitest-browser-chrome:
         by-test-platform:
             linux64-jsdcov/opt: 7200
             linux64-ccov/opt: 7200
             linux64/debug: 5400
             linux32/debug: 5400
             default: 3600
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     mozharness:
         mochitest-flavor: browser
@@ -737,16 +746,19 @@ mochitest-devtools-chrome:
     docker-image: {"in-tree": "desktop1604-test"}
     chunks:
         by-test-platform:
             windows.*: 8
             macosx.*: 8
             default: 10
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     e10s:
         by-test-platform:
@@ -785,16 +797,19 @@ mochitest-gpu:
     description: "Mochitest GPU run"
     suite: mochitest/gpu
     treeherder-symbol: tc-M(gpu)
     loopback-video: true
     virtualization: virtual-with-gpu
     docker-image: {"in-tree": "desktop1604-test"}
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     e10s:
         by-test-platform:
@@ -879,16 +894,19 @@ mochitest-media:
         by-test-platform:
             android.*: 3
             macosx64.*: 1
             windows8-64.*: 1
             default: 3
     docker-image: {"in-tree": "desktop1604-test"}
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     mozharness:
         by-test-platform:
@@ -978,16 +996,19 @@ mochitest-valgrind:
 mochitest-webgl:
     description: "Mochitest webgl run"
     suite: mochitest/mochitest-gl
     treeherder-symbol: tc-M(gl)
     virtualization: virtual-with-gpu
     docker-image: {"in-tree": "desktop1604-test"}
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     chunks:
         by-test-platform:
@@ -1043,16 +1064,19 @@ mochitest-webgl:
 
 reftest:
     description: "Reftest run"
     suite: reftest/reftest
     treeherder-symbol: tc-R(R)
     docker-image: {"in-tree": "desktop1604-test"}
     run-on-projects:
         by-test-platform:
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10.*: []
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     instance-size:
         by-test-platform:
@@ -1158,16 +1182,19 @@ reftest-no-accel:
     suite: reftest/reftest-no-accel
     treeherder-symbol: tc-R(Ru)
     virtualization: virtual-with-gpu
     docker-image: {"in-tree": "desktop1604-test"}
     run-on-projects:
         by-test-platform:
             windows10.*: []
             linux64-qr/.*: ['mozilla-central', 'try']
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     chunks:
         by-test-platform:
             macosx.*: 1
@@ -1788,16 +1815,19 @@ xpcshell:
     suite:
         by-test-platform:
             linux64-jsdcov/opt: xpcshell-coverage
             default: xpcshell
     treeherder-symbol: tc-X(X)
     run-on-projects:
         by-test-platform:
             linux64-qr/.*: ['mozilla-central', 'try']
+            # Deactivate try on Buildbot, by default. We don't have enough machines
+            windows8-64.*: ['mozilla-release', 'mozilla-beta', 'mozilla-central', 'mozilla-inbound', 'autoland']
+            windows8-64-devedition/opt: built-projects  # No dev edition outside of supported branches
             windows10-64-asan/opt: []  # No XPCShell on ASAN yet
             default: built-projects
     worker-type:
         by-test-platform:
             windows8-64.*: buildbot-bridge/buildbot-bridge
             default: null
     docker-image: {"in-tree": "desktop1604-test"}
     tier:
--- a/taskcluster/taskgraph/try_option_syntax.py
+++ b/taskcluster/taskgraph/try_option_syntax.py
@@ -122,19 +122,20 @@ UNITTEST_PLATFORM_PRETTY_NAMES = {
     'Android 4.3': ['android-4.3-arm7-api-15'],
     '10.10': ['macosx64'],
     # other commonly-used substrings for platforms not yet supported with
     # in-tree taskgraphs:
     # '10.10.5': [..TODO..],
     # '10.6': [..TODO..],
     # '10.8': [..TODO..],
     # 'Android 2.3 API9': [..TODO..],
-    # 'Windows 7':  [..TODO..],
-    # 'Windows 7 VM': [..TODO..],
-    # 'Windows 8':  [..TODO..],
+    'Windows 7':  ['windows7-32'],
+    'Windows 7 VM':  ['windows7-32-vm'],
+    'Windows 8':  ['windows8-64'],
+    'Windows 10':  ['windows10-64'],
     # 'Windows XP': [..TODO..],
     # 'win32': [..TODO..],
     # 'win64': [..TODO..],
 }
 
 # We have a few platforms for which we want to do some "extra" builds, or at
 # least build-ish things.  Sort of.  Anyway, these other things are implemented
 # as different "platforms".  These do *not* automatically ride along with "-p
@@ -568,23 +569,24 @@ class TryOptionSyntax(object):
             if try_spec is None:
                 return True
             # TODO: optimize this search a bit
             for test in try_spec:
                 if attr(attr_name) == test['test']:
                     break
             else:
                 return False
+            if 'only_chunks' in test and attr('test_chunk') not in test['only_chunks']:
+                return False
             if 'platforms' in test:
                 platform = attr('test_platform', '').split('/')[0]
-                if platform not in test['platforms']:
-                    return False
-            if 'only_chunks' in test and attr('test_chunk') not in test['only_chunks']:
-                return False
-            return True
+                # Platforms can be forced by syntax like "-u xpcshell[Windows 8]"
+                return platform in test['platforms']
+            else:
+                return check_run_on_projects()
 
         job_try_name = attr('job_try_name')
         if job_try_name:
             # Beware the subtle distinction between [] and None for self.jobs and self.platforms.
             # They will be [] if there was no try syntax, and None if try syntax was detected but
             # they remained unspecified.
             if self.jobs and job_try_name not in self.jobs:
                 return False