Bug 1338385 - Add cron job for nightly coverage tests run; r=jmaher
authorMadeleine Chercover <madeleinechercover@me.com>
Wed, 08 Feb 2017 11:16:25 -0800
changeset 391308 55dfa1cb4a754d7ad22e5a1d180428fd3efc47ae
parent 391307 24fe1cbe24cbff8be635c60b13bc42ad48c8b2b8
child 391309 b5d12d30e6cfa3d6e9291c2b9a0e0a6299b422e1
push id1468
push userasasaki@mozilla.com
push dateMon, 05 Jun 2017 19:31:07 +0000
treeherdermozilla-release@0641fc6ee9d1 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjmaher
bugs1338385
milestone54.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1338385 - Add cron job for nightly coverage tests run; r=jmaher MozReview-Commit-ID: GiL4LZgHmqW
.cron.yml
taskcluster/taskgraph/target_tasks.py
--- a/.cron.yml
+++ b/.cron.yml
@@ -44,8 +44,18 @@ jobs:
           type: decision-task
           treeherder-symbol: Vg
           target-tasks-method: mochitest_valgrind
       run-on-projects:
           - mozilla-central
       when:
           - {hour: 16, minute: 0}
           - {hour: 4, minute: 0}
+
+    - name: nightly-code-coverage
+      job:
+          type: decision-task
+          treeherder-symbol: Nc
+          target-tasks-method: nightly_code_coverage
+      run-on-projects:
+          - mozilla-central
+      when:
+          - {hour: 18, minute: 0}
--- a/taskcluster/taskgraph/target_tasks.py
+++ b/taskcluster/taskgraph/target_tasks.py
@@ -147,16 +147,25 @@ def target_tasks_valgrind(full_task_grap
         if platform not in ['linux64']:
             return False
         if task.attributes.get('unittest_suite'):
             if not (task.attributes['unittest_suite'].startswith('mochitest-valgrind')):
                 return False
         return True
     return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
 
+@_target_task('nightly_code_coverage')
+def target_tasks_code_coverage(full_task_graph, parameters):
+    """Target tasks that generate coverage data."""
+    def filter(task):
+        platform = task.attributes.get('build_platform')
+        if platform not in ('linux64-ccov/opt', 'linux64-jsdcov/opt'):
+            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):
         platform = task.attributes.get('build_platform')