Bug 1315690 - Limit cedar TC tests to Linux64 mochitest* and xpcshell only u=aselagea r=dustin
authorKim Moir <kmoir@mozilla.com>
Tue, 08 Nov 2016 09:22:17 -0500
changeset 351742 b086ef986f275bb067a511e9dc4890aff2109cf7
parent 351741 8daddd6054f2bc3c1c563a257cbaf720032bea95
child 351743 c69a0c17a17d4948c66a1e3dae73a959836be628
push id6795
push userjlund@mozilla.com
push dateMon, 23 Jan 2017 14:19:46 +0000
treeherdermozilla-esr52@76101b503191 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdustin
bugs1315690
milestone52.0a1
Bug 1315690 - Limit cedar TC tests to Linux64 mochitest* and xpcshell only u=aselagea r=dustin
taskcluster/taskgraph/decision.py
taskcluster/taskgraph/target_tasks.py
--- a/taskcluster/taskgraph/decision.py
+++ b/taskcluster/taskgraph/decision.py
@@ -41,16 +41,21 @@ PER_PROJECT_PARAMETERS = {
         'optimize_target_tasks': True,
     },
 
     'ash': {
         'target_tasks_method': 'ash_tasks',
         'optimize_target_tasks': True,
     },
 
+    'cedar': {
+        'target_tasks_method': 'cedar_tasks',
+        'optimize_target_tasks': True,
+    },
+
     # the default parameters are used for projects that do not match above.
     'default': {
         'target_tasks_method': 'default',
         'optimize_target_tasks': True,
     }
 }
 
 
--- a/taskcluster/taskgraph/target_tasks.py
+++ b/taskcluster/taskgraph/target_tasks.py
@@ -107,16 +107,31 @@ def target_tasks_ash(full_task_graph, pa
                 return False
         # don't upload symbols
         if task.attributes['kind'] == 'upload-symbols':
             return False
         return True
     return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
 
 
+@_target_task('cedar_tasks')
+def target_tasks_cedar(full_task_graph, parameters):
+    """Target tasks that only run on the cedar branch."""
+    def filter(task):
+        platform = task.attributes.get('build_platform')
+        # only select platforms
+        if platform not in ['linux64'] :
+            return False
+        if task.attributes.get('unittest_suite'):
+            if not (task.attributes['unittest_suite'].startswith('mochitest') or 'xpcshell' in task.attributes['unittest_suite']):
+                return False
+        return True
+    return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
+
+
 @_target_task('nightly_fennec')
 def target_tasks_nightly(full_task_graph, parameters):
     """Select the set of tasks required for a nightly build of fennec. The
     nightly build process involves a pipeline of builds, signing,
     and, eventually, uploading the tasks to balrog."""
     def filter(task):
         return task.attributes.get('nightly', False)
     return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]