Bug 1357112 - Add win64 nightly to Taskgraph. r=dustin
authorJustin Wood <Callek@gmail.com>
Mon, 01 May 2017 13:43:46 -0400
changeset 356544 6562fdb4b99b2eccd5f0485e97e0a6acc97252c5
parent 356543 a646b729971e172877b2be0b677fca525d2c97a4
child 356545 621a610013657574e7e0d4edc88c34bfcc82a638
push id31767
push usercbook@mozilla.com
push dateFri, 05 May 2017 13:15:58 +0000
treeherdermozilla-central@8872ad4d52b6 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdustin
bugs1357112
milestone55.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 1357112 - Add win64 nightly to Taskgraph. r=dustin MozReview-Commit-ID: 1ZCjVE53gSe
.cron.yml
taskcluster/ci/build-signing/kind.yml
taskcluster/ci/build/windows.yml
taskcluster/taskgraph/target_tasks.py
--- a/.cron.yml
+++ b/.cron.yml
@@ -26,16 +26,26 @@ jobs:
           type: decision-task
           treeherder-symbol: Nd-OSX
           triggered-by: nightly
           target-tasks-method: nightly_macosx
       run-on-projects:
           - date
       when: [] # never (hook only)
 
+    - name: nightly-desktop-win64
+      job:
+          type: decision-task
+          treeherder-symbol: Nd-Win64
+          triggered-by: nightly
+          target-tasks-method: nightly_win64
+      run-on-projects:
+          - date
+      when: [] # never (hook only)
+
     - name: nightly-android
       job:
           type: decision-task
           treeherder-symbol: Na
           triggered-by: nightly
           target-tasks-method: nightly_fennec
       run-on-projects:
           - mozilla-central
--- a/taskcluster/ci/build-signing/kind.yml
+++ b/taskcluster/ci/build-signing/kind.yml
@@ -9,8 +9,11 @@ transforms:
    - taskgraph.transforms.signing:transforms
    - taskgraph.transforms.task:transforms
 
 kind-dependencies:
   - build
 
 only-for-attributes:
   - nightly
+
+not-for-build-platforms:
+   - win64-nightly/opt
--- a/taskcluster/ci/build/windows.yml
+++ b/taskcluster/ci/build/windows.yml
@@ -89,16 +89,40 @@ win64/opt:
         implementation: generic-worker
         max-run-time: 7200
     run:
         using: mozharness
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_firefox_windows_64_opt.py
 
+win64-nightly/opt:
+    description: "Win64 Nightly"
+    index:
+        product: firefox
+        job-name: win64-opt
+        type: nightly
+    attributes:
+        nightly: true
+    treeherder:
+        platform: windows2012-64/opt
+        symbol: tc(N)
+        tier: 2
+    worker-type: aws-provisioner-v1/gecko-{level}-b-win2012
+    worker:
+        implementation: generic-worker
+        max-run-time: 7200
+    run:
+        using: mozharness
+        script: mozharness/scripts/fx_desktop_build.py
+        config:
+            - builds/taskcluster_firefox_windows_64_opt.py
+            - disable_signing.py
+            - taskcluster_nightly.py
+
 win64/pgo:
     description: "Win64 Opt PGO"
     index:
         product: firefox
         job-name: win64-pgo
     treeherder:
         platform: windows2012-64/pgo
         symbol: tc(B)
--- a/taskcluster/taskgraph/target_tasks.py
+++ b/taskcluster/taskgraph/target_tasks.py
@@ -146,18 +146,18 @@ def target_tasks_ash(full_task_graph, pa
 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']):
+            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('graphics_tasks')
 def target_tasks_graphics(full_task_graph, parameters):
     """In addition to doing the filtering by project that the 'default'
@@ -313,8 +313,23 @@ def target_tasks_nightly_macosx(full_tas
     """Select the set of tasks required for a nightly build of macosx. 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')
         if platform in ('macosx64-nightly', ):
             return task.attributes.get('nightly', False)
     return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
+
+
+# nightly_win64 should be refactored to be nightly_all once
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1267425 dependent bugs are
+# implemented
+@_target_task('nightly_win64')
+def target_tasks_nightly_win64(full_task_graph, parameters):
+    """Select the set of tasks required for a nightly build of win64. 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')
+        if platform in ('win64-nightly', ):
+            return task.attributes.get('nightly', False)
+    return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]