Bug 1555959 - Split Geckoview publication from the Fennec one r=Callek a=release
authorJohan Lorenzo <jlorenzo@mozilla.com>
Wed, 29 May 2019 12:05:44 +0200
changeset 536619 367cb19f090ac1cc158765a0bb09fa7a7c4dd909
parent 536618 fcdf8c235e45415a730e6fee64d27eb5f9fe05bf
child 536620 a18ba6b81509b2ecfb5fb963ec142e1382badf05
push id2082
push userffxbld-merge
push dateMon, 01 Jul 2019 08:34:18 +0000
treeherdermozilla-release@2fb19d0466d2 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersCallek, release
bugs1555959
milestone68.0
Bug 1555959 - Split Geckoview publication from the Fennec one r=Callek a=release Differential Revision: https://phabricator.services.mozilla.com/D33279
.cron.yml
taskcluster/taskgraph/target_tasks.py
--- a/.cron.yml
+++ b/.cron.yml
@@ -82,16 +82,28 @@ jobs:
       when:
           by-project:
               # mozilla-central builds geckoview, mozilla-beta builds
               # and ships Fennec nightly
               mozilla-central: [{hour: 10, minute: 0}]
               mozilla-beta: [{hour: 10, minute: 0}]
               # No default
 
+    - name: ship-geckoview
+      job:
+          type: decision-task
+          treeherder-symbol: ship_geckoview_beta
+          target-tasks-method: ship_geckoview_beta
+          include-push-tasks: true
+          android-release-type: beta
+      run-on-projects:
+          - mozilla-beta
+      when: []	# never (hook only)
+
+
     - name: searchfox-index
       job:
           type: decision-task
           treeherder-symbol: Searchfox
           target-tasks-method: searchfox_index
       run-on-projects:
           - mozilla-central
           - mozilla-beta
--- a/taskcluster/taskgraph/target_tasks.py
+++ b/taskcluster/taskgraph/target_tasks.py
@@ -400,16 +400,20 @@ def target_tasks_ship_fennec(full_task_g
     """Select the set of tasks required to ship fennec.
     Previous build deps will be optimized out via action task."""
     is_rc = (parameters.get('release_type') == 'release-rc')
     filtered_for_candidates = target_tasks_promote_fennec(
         full_task_graph, parameters, graph_config,
     )
 
     def filter(task):
+        # XXX Starting 68, Geckoview is shipped in a separate target_tasks
+        if task.kind == 'beetmover-geckoview':
+            return False
+
         # Include candidates build tasks; these will be optimized out
         if task.label in filtered_for_candidates:
             return True
         if task.attributes.get('shipping_product') != 'fennec' or \
                 task.attributes.get('shipping_phase') not in ('ship', 'push') or \
                 task.attributes.get('release-type') == 'nightly':
             return False
 
@@ -459,16 +463,31 @@ def target_tasks_nightly_fennec(full_tas
             if task.attributes.get('release-type') == 'nightly':
                 if not task.attributes.get('nightly', False):
                     return False
                 return True
 
     return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
 
 
+@_target_task('ship_geckoview_beta')
+def target_tasks_nightly_geckoview(full_task_graph, parameters, graph_config):
+    """Select the set of tasks required to ship geckoview beta. The
+    build process involves a pipeline of builds and an upload to
+    maven.mozilla.org."""
+
+    def filter(task):
+        # XXX Starting 69, we don't ship Fennec Nightly anymore. We just want geckoview to be
+        # uploaded
+        return task.kind == 'beetmover-geckoview' and task.attributes.get('release-type') == 'beta'
+
+    return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
+
+
+
 def make_desktop_nightly_filter(platforms):
     """Returns a filter that gets all nightly tasks on the given platform."""
     def filter(task, parameters):
         return all([
             filter_on_platforms(task, platforms),
             filter_for_project(task, parameters),
             any([
                 task.attributes.get('nightly', False),