bug 1423081 - Add balrog publishing task. r=callek
authorJohan Lorenzo <jlorenzo@mozilla.com>
Wed, 13 Dec 2017 11:42:58 -0600
changeset 396380 c5894798a3a00122fa93c15c044116947861f4f4
parent 396379 ac273544f2a1fd52b06ec2a398a7323b6d109393
child 396381 a0dce3b206fa8648ba301bd707638cc9d66d59ad
push id56975
push userdluca@mozilla.com
push dateThu, 14 Dec 2017 09:59:07 +0000
treeherderautoland@16bcfaad13e1 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerscallek
bugs1423081
milestone59.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 1423081 - Add balrog publishing task. r=callek MozReview-Commit-ID: 3FF9KI0JUYN
taskcluster/ci/release-balrog-publishing/kind.yml
taskcluster/ci/release-mark-as-shipped/kind.yml
taskcluster/ci/release-notify-ship/kind.yml
taskcluster/docs/kinds.rst
new file mode 100644
--- /dev/null
+++ b/taskcluster/ci/release-balrog-publishing/kind.yml
@@ -0,0 +1,86 @@
+# 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/.
+
+loader: taskgraph.loader.transform:loader
+
+transforms:
+   - taskgraph.transforms.release_deps:transforms
+   - taskgraph.transforms.job:transforms
+   - taskgraph.transforms.task:transforms
+
+kind-dependencies:
+   - release-uptake-monitoring
+
+job-defaults:
+   description: Schedule publishing in balrog
+   worker-type: buildbot-bridge/buildbot-bridge
+   run-on-projects: []
+   shipping-phase: ship
+   run:
+      using: buildbot
+      release-promotion: true
+   index:
+      type: release
+   notifications:
+      completed:
+         subject: "COMPLETED: [{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]}] {task_def[metadata][name]} task"
+         message: "COMPLETED: [{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]}] {task_def[metadata][name]} task"
+         plugins:
+            by-project:
+               mozilla-beta: ["log_collect"]
+               mozilla-release: ["log_collect"]
+               default: []
+
+      failed:
+         subject: "FAILED: [{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]}] {task_def[metadata][name]} task"
+         message: "FAILED: [{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]}] {task_def[metadata][name]} task"
+         plugins:
+            by-project:
+               mozilla-beta: ["log_collect", "ses"]
+               mozilla-release: ["log_collect", "ses"]
+               default: ["ses"]
+         emails:
+            by-project:
+               mozilla-beta: ["release-automation-notifications@mozilla.com"]
+               mozilla-release: ["release-automation-notifications@mozilla.com"]
+               try: ["{task_def[metadata][owner]}"]
+               maple: ["release+tcstaging@mozilla.com"]
+               default: []
+
+      exception:
+         subject: "EXCEPTION: [{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]}] {task_def[metadata][name]} task"
+         message: "EXCEPTION: [{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]}] {task_def[metadata][name]} task"
+         plugins:
+            by-project:
+               mozilla-beta: ["log_collect", "ses"]
+               mozilla-release: ["log_collect", "ses"]
+               default: ["ses"]
+         emails:
+            by-project:
+               mozilla-beta: ["release-automation-notifications@mozilla.com"]
+               mozilla-release: ["release-automation-notifications@mozilla.com"]
+               try: ["{task_def[metadata][owner]}"]
+               maple: ["release+tcstaging@mozilla.com"]
+               default: []
+   routes:
+      - index.releases.v1.{branch}.latest.{product}.latest.schedule_publishing_in_balrog
+      - index.releases.v1.{branch}.{revision}.{product}.{underscore_version}.build{build_number}.schedule_publishing_in_balrog
+
+jobs:
+   firefox:
+      name: release-firefox_schedule_publishing_in_balrog
+      shipping-product: firefox
+      run:
+         product: firefox
+         buildername: release-{branch}-firefox_schedule_publishing_in_balrog
+      index:
+         product: firefox
+   devedition:
+      name: release-devedition_schedule_publishing_in_balrog
+      shipping-product: devedition
+      run:
+         product: devedition
+         buildername: release-{branch}-devedition_schedule_publishing_in_balrog
+      index:
+         product: devedition
--- a/taskcluster/ci/release-mark-as-shipped/kind.yml
+++ b/taskcluster/ci/release-mark-as-shipped/kind.yml
@@ -6,16 +6,17 @@ loader: taskgraph.loader.transform:loade
 
 transforms:
    - taskgraph.transforms.release_deps:transforms
    - taskgraph.transforms.job:transforms
    - taskgraph.transforms.task:transforms
 
 kind-dependencies:
    - push-apk
+   - release-balrog-publishing
    - release-bouncer-aliases
    - release-version-bump
 
 job-defaults:
    description: mark release as shipped in Ship-It
    worker-type: buildbot-bridge/buildbot-bridge
    run-on-projects: []
    shipping-phase: ship
--- a/taskcluster/ci/release-notify-ship/kind.yml
+++ b/taskcluster/ci/release-notify-ship/kind.yml
@@ -5,16 +5,17 @@
 loader: taskgraph.loader.transform:loader
 
 transforms:
    - taskgraph.transforms.release_deps:transforms
    - taskgraph.transforms.task:transforms
 
 kind-dependencies:
    - push-apk
+   - release-balrog-publishing
    - release-bouncer-aliases
    - release-version-bump
    - release-mark-as-shipped
 
 job-defaults:
    name: notify-release-drivers-ship
    description: Sends email to release-drivers telling release was shipped.
    run-on-projects: []
--- a/taskcluster/docs/kinds.rst
+++ b/taskcluster/docs/kinds.rst
@@ -224,16 +224,20 @@ kind depend on all the signed multi-loca
 in order to make the decision.
 
 push-apk
 --------
 PushApk publishes Android packages onto Google Play Store. Jobs of this kind take
 all the signed multi-locales (aka "multi") APKs for a given release and upload them
 all at once. They also depend on the breakpoint.
 
+release-balrog-publishing
+----------------------
+Schedule a release to go live in Balrog.
+
 release-binary-transparency
 ---------------------------
 Binary transparency creates a publicly verifiable log of binary shas for downstream
 release auditing. https://wiki.mozilla.org/Security/Binary_Transparency
 
 release-snap
 ------------
 Generate an installer using Ubuntu's Snap format.