bug 1423081 - add checksums builder. r=callek draft
authorAki Sasaki <asasaki@mozilla.com>
Thu, 07 Dec 2017 16:05:25 -0800
changeset 711450 2879a9e1ea1b207b4a13064097c333a1854cc73f
parent 711449 dc64f59befc9f5af5dd73d33b9772d0f00d384a5
child 711451 ab5190c7b53c485db7e8f369201883ee8f59bd8c
push id93069
push userasasaki@mozilla.com
push dateWed, 13 Dec 2017 22:57:07 +0000
reviewerscallek
bugs1423081
milestone59.0a1
bug 1423081 - add checksums builder. r=callek MozReview-Commit-ID: Gyd6DPzWi35
taskcluster/ci/post-beetmover-checksums-dummy/kind.yml
taskcluster/ci/release-generate-checksums/kind.yml
taskcluster/docs/kinds.rst
new file mode 100644
--- /dev/null
+++ b/taskcluster/ci/post-beetmover-checksums-dummy/kind.yml
@@ -0,0 +1,62 @@
+# 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.reverse_chunk_deps:transforms
+   - taskgraph.transforms.task:transforms
+
+kind-dependencies:
+   - beetmover-checksums
+
+jobs:
+   firefox-promote:
+      name: post-beetmover-checksums-dummy
+      description: Dummy task to deal with max_dependencies
+      run-on-projects: []
+      shipping-phase: promote
+      shipping-product: firefox
+      worker-type: aws-provisioner-v1/gecko-{level}-b-linux
+      worker:
+         implementation: docker-worker
+         os: linux
+         docker-image: "ubuntu:16.10"
+         max-run-time: 600
+         command:
+            - /bin/bash
+            - -c
+            - echo "Dummy task"
+   devedition-promote:
+      name: post-beetmover-checksums-dummy
+      description: Dummy task to deal with max_dependencies
+      run-on-projects: []
+      shipping-phase: promote
+      shipping-product: devedition
+      worker-type: aws-provisioner-v1/gecko-{level}-b-linux
+      worker:
+         implementation: docker-worker
+         os: linux
+         docker-image: "ubuntu:16.10"
+         max-run-time: 600
+         command:
+            - /bin/bash
+            - -c
+            - echo "Dummy task"
+   fennec-promote:
+      name: post-beetmover-checksums-dummy
+      description: Dummy task to deal with max_dependencies
+      run-on-projects: []
+      shipping-phase: promote
+      shipping-product: fennec
+      worker-type: aws-provisioner-v1/gecko-{level}-b-linux
+      worker:
+         implementation: docker-worker
+         os: linux
+         docker-image: "ubuntu:16.10"
+         max-run-time: 600
+         command:
+            - /bin/bash
+            - -c
+            - echo "Dummy task"
new file mode 100644
--- /dev/null
+++ b/taskcluster/ci/release-generate-checksums/kind.yml
@@ -0,0 +1,101 @@
+# 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:
+   - beetmover-source
+   - post-beetmover-checksums-dummy
+
+job-defaults:
+   description: generates checksums
+   worker-type: buildbot-bridge/buildbot-bridge
+   run-on-projects: []
+   shipping-phase: promote
+   index:
+      type: release
+   run:
+      using: buildbot
+      release-promotion: true
+   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: []
+
+jobs:
+   firefox:
+      name: release-firefox_chcksms
+      shipping-product: firefox
+      run:
+         product: firefox
+         buildername: release-{branch}-firefox_chcksms
+      routes:
+         - index.releases.v1.{branch}.latest.firefox.latest.checksums
+         - index.releases.v1.{branch}.{revision}.firefox.{underscore_version}.build{build_number}.checksums
+      index:
+         product: firefox
+   fennec:
+      name: release-fennec_chcksms
+      shipping-product: fennec
+      run:
+         product: fennec
+         buildername: release-{branch}-fennec_chcksms
+      routes:
+         - index.releases.v1.{branch}.latest.fennec.latest.checksums
+         - index.releases.v1.{branch}.{revision}.fennec.{underscore_version}.build{build_number}.checksums
+      index:
+         product: fennec
+   devedition:
+      name: devedition_release_chcksms
+      shipping-product: devedition
+      run:
+         product: devedition
+         buildername: release-{branch}-devedition_chcksms
+      routes:
+         - index.releases.v1.{branch}.latest.devedition.latest.checksums
+         - index.releases.v1.{branch}.{revision}.devedition.{underscore_version}.build{build_number}.checksums
+      index:
+         product: devedition
--- a/taskcluster/docs/kinds.rst
+++ b/taskcluster/docs/kinds.rst
@@ -257,16 +257,20 @@ Submits bouncer updates for releases.
 release-mark-as-shipped
 -----------------------
 Marks releases as shipped in Ship-It.
 
 release-bouncer-aliases
 ------------------------------
 Update Bouncers (download.mozilla.org) "latest" aliases.
 
+release-generate-checksums
+--------------------------
+Generate the per-release checksums along with the summaries and upload it to S3.
+
 release-final-verify
 ---------------------
 Verifies the contents and package of release update MARs.
 
 release-secondary-final-verify
 ---------------------
 Verifies the contents and package of release update MARs.