Bug 1280637 - Make sm-{asan,tsan,msan} try-only for now, r=garndt
authorSteve Fink <sfink@mozilla.com>
Fri, 08 Jul 2016 13:51:11 -0700
changeset 330687 9e01e72d8ac7d86e3a358f370890b754534dff66
parent 330686 4126bd41ce8b12ecbb4bc2ec510bba009017a035
child 330688 bc11f3fed0a55bbcb5ca84f4d0fb4b81a94a8dda
push id9858
push userjlund@mozilla.com
push dateMon, 01 Aug 2016 14:37:10 +0000
treeherdermozilla-aurora@203106ef6cb6 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersgarndt
bugs1280637
milestone50.0a1
Bug 1280637 - Make sm-{asan,tsan,msan} try-only for now, r=garndt MozReview-Commit-ID: Dx58G6O3B2Y
taskcluster/ci/legacy/tasks/branches/base_jobs.yml
taskcluster/ci/legacy/tasks/branches/try/job_flags.yml
taskcluster/taskgraph/try_option_syntax.py
--- a/taskcluster/ci/legacy/tasks/branches/base_jobs.yml
+++ b/taskcluster/ci/legacy/tasks/branches/base_jobs.yml
@@ -45,19 +45,16 @@ builds:
       - linux64-l10n
       - sm-plain
       - sm-nonunified
       - sm-arm-sim
       - sm-arm64-sim
       - sm-compacting
       - sm-rootanalysis
       - sm-package
-      - sm-tsan
-      - sm-asan
-      - sm-msan
     types:
       opt:
         task: tasks/builds/opt_linux64.yml
       debug:
         task: tasks/builds/dbg_linux64.yml
   linux64-artifact:
     platforms:
       - Linux64
@@ -127,42 +124,16 @@ builds:
       opt:
         task: tasks/builds/sm_plain.yml
       debug:
         task: tasks/builds/sm_plaindebug.yml
     when:
       file_patterns:
        - js/public/**
        - js/src/**
-  sm-tsan:
-    platforms:
-      - Linux64
-    types:
-      opt:
-        task: tasks/builds/sm_tsan.yml
-    when:
-      file_patterns:
-       - js/public/**
-       - js/src/**
-  sm-asan:
-    platforms:
-      - Linux64
-    types:
-      opt:
-        task: tasks/builds/sm_asan.yml
-    when:
-      file_patterns:
-       - js/public/**
-       - js/src/**
-  sm-msan:
-    platforms:
-      - Linux64
-    types:
-      opt:
-        task: tasks/builds/sm_msan.yml
     when:
       file_patterns:
        - js/public/**
        - js/src/**
   sm-nonunified:
     platforms:
       - Linux64
     types:
--- a/taskcluster/ci/legacy/tasks/branches/try/job_flags.yml
+++ b/taskcluster/ci/legacy/tasks/branches/try/job_flags.yml
@@ -38,16 +38,28 @@ builds:
         - testing/mozharness/configs/single_locale/**
         - testing/mozharness/mozharness/mozilla/l10n/locales.py
         - testing/mozharness/scripts/desktop_l10n.py
         - toolkit/locales/**
         - toolkit/mozapps/installer/**
   linux64:
     platforms:
       - Linux64
+    extra-builds:  # see RIDEALONG_BUILDS in `mach taskgraph`
+      - linux64-l10n
+      - sm-plain
+      - sm-nonunified
+      - sm-arm-sim
+      - sm-arm64-sim
+      - sm-compacting
+      - sm-rootanalysis
+      - sm-package
+      - sm-tsan
+      - sm-asan
+      - sm-msan
     types:
       opt:
         task: tasks/builds/opt_linux64.yml
       debug:
         task: tasks/builds/dbg_linux64.yml
   linux64-l10n:
     platforms:
       - Linux64
@@ -122,16 +134,46 @@ builds:
   nexus-5l-eng:
     platforms:
       - b2g
     types:
       opt:
         task: tasks/builds/b2g_nexus_5l_eng.yml
       debug:
         task: tasks/builds/b2g_nexus_5l_debug.yml
+  sm-tsan:
+    platforms:
+      - Linux64
+    types:
+      opt:
+        task: tasks/builds/sm_tsan.yml
+    when:
+      file_patterns:
+       - js/public/**
+       - js/src/**
+  sm-asan:
+    platforms:
+      - Linux64
+    types:
+      opt:
+        task: tasks/builds/sm_asan.yml
+    when:
+      file_patterns:
+       - js/public/**
+       - js/src/**
+  sm-msan:
+    platforms:
+      - Linux64
+    types:
+      opt:
+        task: tasks/builds/sm_msan.yml
+    when:
+      file_patterns:
+       - js/public/**
+       - js/src/**
 
 post-build:
   upload-symbols:
     allowed_build_tasks:
       - tasks/builds/opt_linux64.yml
       - tasks/builds/opt_linux64_st-an.yml
       - tasks/builds/dbg_linux64.yml
       - tasks/builds/android_api_15.yml
--- a/taskcluster/taskgraph/try_option_syntax.py
+++ b/taskcluster/taskgraph/try_option_syntax.py
@@ -1,19 +1,22 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 from __future__ import absolute_import, print_function, unicode_literals
 
 import argparse
 import copy
+import logging
 import re
 import shlex
 
+logger = logging.getLogger(__name__)
+
 TRY_DELIMITER = 'try:'
 
 # The build type aliases are very cryptic and only used in try flags these are
 # mappings from the single char alias to a longer more recognizable form.
 BUILD_TYPE_ALIASES = {
     'o': 'opt',
     'd': 'debug'
 }
@@ -130,16 +133,19 @@ RIDEALONG_BUILDS = {
         'linux64-l10n',
         'sm-plain',
         'sm-nonunified',
         'sm-arm-sim',
         'sm-arm64-sim',
         'sm-compacting',
         'sm-rootanalysis',
         'sm-package',
+        'sm-tsan',
+        'sm-asan',
+        'sm-msan',
     ],
 }
 
 TEST_CHUNK_SUFFIX = re.compile('(.*)-([0-9]+)$')
 
 
 class TryOptionSyntax(object):
 
@@ -230,16 +236,18 @@ class TryOptionSyntax(object):
         if platform_arg == 'all':
             return None
 
         results = []
         for build in platform_arg.split(','):
             results.append(build)
             if build in RIDEALONG_BUILDS:
                 results.extend(RIDEALONG_BUILDS[build])
+                logger.info("platform %s triggers ridealong builds %s" %
+                            (build, RIDEALONG_BUILDS[build]))
 
         return results
 
     def parse_test_option(self, attr_name, test_arg, full_task_graph):
         '''
 
         Parse a unittest (-u) or talos (-t) option, in the context of a full
         task graph containing available `unittest_try_name` or `talos_try_name`