--- a/taskcluster/ci/balrog/kind.yml
+++ b/taskcluster/ci/balrog/kind.yml
@@ -2,16 +2,17 @@
# 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.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.balrog:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover
- beetmover-l10n
- beetmover-repackage
only-for-attributes:
--- a/taskcluster/ci/beetmover-cdns/kind.yml
+++ b/taskcluster/ci/beetmover-cdns/kind.yml
@@ -2,16 +2,17 @@
# 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.beetmover_cdns:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- release-generate-checksums
job-defaults:
worker-type:
by-project:
--- a/taskcluster/ci/beetmover-checksums/kind.yml
+++ b/taskcluster/ci/beetmover-checksums/kind.yml
@@ -2,16 +2,17 @@
# 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.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.beetmover_checksums:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- checksums-signing
only-for-attributes:
- nightly
--- a/taskcluster/ci/beetmover-repackage/kind.yml
+++ b/taskcluster/ci/beetmover-repackage/kind.yml
@@ -3,16 +3,17 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.beetmover_repackage_l10n:transforms
- taskgraph.transforms.beetmover_repackage:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- repackage-signing
- partials-signing
only-for-build-platforms:
- linux-nightly/opt
--- a/taskcluster/ci/beetmover-source/kind.yml
+++ b/taskcluster/ci/beetmover-source/kind.yml
@@ -3,15 +3,16 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.beetmover:transforms
- taskgraph.transforms.beetmover_source:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- release-source-signing
job-template:
shipping-phase: promote
--- a/taskcluster/ci/beetmover/kind.yml
+++ b/taskcluster/ci/beetmover/kind.yml
@@ -2,16 +2,17 @@
# 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.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.beetmover:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- build-signing
only-for-attributes:
- nightly
--- a/taskcluster/ci/build-signing/kind.yml
+++ b/taskcluster/ci/build-signing/kind.yml
@@ -3,12 +3,13 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
loader: taskgraph.loader.build_signing:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.build_signing:transforms
- taskgraph.transforms.signing:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- build
--- a/taskcluster/ci/build/kind.yml
+++ b/taskcluster/ci/build/kind.yml
@@ -7,16 +7,17 @@ loader: taskgraph.loader.transform:loade
kind-dependencies:
- toolchain
transforms:
- taskgraph.transforms.build:transforms
- taskgraph.transforms.build_attrs:transforms
- taskgraph.transforms.build_lints:transforms
- taskgraph.transforms.use_toolchains:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.job:transforms
- taskgraph.transforms.task:transforms
jobs-from:
- android.yml
- android-stuff.yml
- linux.yml
- macosx.yml
--- a/taskcluster/ci/checksums-signing/kind.yml
+++ b/taskcluster/ci/checksums-signing/kind.yml
@@ -2,16 +2,17 @@
# 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.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.checksums_signing:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover
- beetmover-l10n
- beetmover-repackage
only-for-attributes:
--- a/taskcluster/ci/google-play-strings/kind.yml
+++ b/taskcluster/ci/google-play-strings/kind.yml
@@ -1,16 +1,17 @@
# 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.google_play_strings:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
jobs:
google-play-strings:
description: Download strings to display on Google Play from https://l10n.mozilla-community.org/stores_l10n/
attributes:
build_type: google_play_strings
build_platform: android-nightly
--- a/taskcluster/ci/nightly-l10n-signing/kind.yml
+++ b/taskcluster/ci/nightly-l10n-signing/kind.yml
@@ -3,15 +3,16 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.nightly_l10n_signing:transforms
- taskgraph.transforms.signing:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- nightly-l10n
only-for-attributes:
- nightly
--- a/taskcluster/ci/nightly-l10n/kind.yml
+++ b/taskcluster/ci/nightly-l10n/kind.yml
@@ -3,16 +3,17 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.l10n:transforms
- taskgraph.transforms.use_toolchains:transforms
- taskgraph.transforms.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- build
- toolchain
only-for-build-platforms:
- linux64-nightly/opt
--- a/taskcluster/ci/post-beetmover-checksums-dummy/kind.yml
+++ b/taskcluster/ci/post-beetmover-checksums-dummy/kind.yml
@@ -1,16 +1,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover-checksums
jobs:
firefox-promote:
name: post-beetmover-checksums-dummy
--- a/taskcluster/ci/post-beetmover-dummy/kind.yml
+++ b/taskcluster/ci/post-beetmover-dummy/kind.yml
@@ -1,16 +1,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover-checksums
- beetmover-repackage
# Fennec doesn't have beetmover-{checksums,repackage}, so
# also depend on vanilla beetmover.
- beetmover
--- a/taskcluster/ci/push-apk-breakpoint/kind.yml
+++ b/taskcluster/ci/push-apk-breakpoint/kind.yml
@@ -1,16 +1,17 @@
# 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.push_apk:loader
transforms:
- taskgraph.transforms.push_apk_breakpoint:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- build-signing
jobs:
android-push-apk-breakpoint/opt:
description: PushApk breakpoint. Decides whether APK should be published onto Google Play Store
--- a/taskcluster/ci/push-apk/kind.yml
+++ b/taskcluster/ci/push-apk/kind.yml
@@ -1,16 +1,17 @@
# 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.push_apk:loader
transforms:
- taskgraph.transforms.push_apk:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- build-signing
- google-play-strings
- push-apk-breakpoint
- beetmover-checksums
--- a/taskcluster/ci/release-balrog-publishing/kind.yml
+++ b/taskcluster/ci/release-balrog-publishing/kind.yml
@@ -3,16 +3,17 @@
# 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.release_balrog_publishing:transforms
- taskgraph.transforms.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- release-uptake-monitoring
job-defaults:
description: Schedule publishing in balrog
worker-type: buildbot-bridge/buildbot-bridge
--- a/taskcluster/ci/release-binary-transparency/kind.yml
+++ b/taskcluster/ci/release-binary-transparency/kind.yml
@@ -1,16 +1,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- post-beetmover-checksums-dummy
job-defaults:
name: release-binary-transparency
description: Binary transparency to issue a certificate
--- a/taskcluster/ci/release-bouncer-aliases/kind.yml
+++ b/taskcluster/ci/release-bouncer-aliases/kind.yml
@@ -2,16 +2,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- release-uptake-monitoring
job-defaults:
description: Update bouncer aliases job
worker-type: buildbot-bridge/buildbot-bridge
--- a/taskcluster/ci/release-bouncer-sub/kind.yml
+++ b/taskcluster/ci/release-bouncer-sub/kind.yml
@@ -1,16 +1,17 @@
# 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.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
job-defaults:
description: release bouncer submission job
worker-type: buildbot-bridge/buildbot-bridge
run-on-projects: []
shipping-phase: promote
index:
--- a/taskcluster/ci/release-final-verify/kind.yml
+++ b/taskcluster/ci/release-final-verify/kind.yml
@@ -5,16 +5,17 @@
loader: taskgraph.loader.transform:loader
kind-dependencies:
- release-uptake-monitoring
transforms:
- taskgraph.transforms.release_deps:transforms
- taskgraph.transforms.final_verify:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
job-defaults:
name: final-verify
run-on-projects: [] # to make sure this never runs as part of CI
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
implementation: docker-worker
--- a/taskcluster/ci/release-generate-checksums/kind.yml
+++ b/taskcluster/ci/release-generate-checksums/kind.yml
@@ -2,16 +2,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover-source
- post-beetmover-checksums-dummy
job-defaults:
description: generates checksums
--- a/taskcluster/ci/release-mark-as-shipped/kind.yml
+++ b/taskcluster/ci/release-mark-as-shipped/kind.yml
@@ -2,16 +2,17 @@
# 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.release_mark_as_shipped:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- push-apk
- release-balrog-publishing
- release-bouncer-aliases
- release-version-bump
--- a/taskcluster/ci/release-notify-promote/kind.yml
+++ b/taskcluster/ci/release-notify-promote/kind.yml
@@ -1,16 +1,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- post-beetmover-dummy
- release-bouncer-sub
job-defaults:
name: notify-release-drivers-promote
--- a/taskcluster/ci/release-notify-push/kind.yml
+++ b/taskcluster/ci/release-notify-push/kind.yml
@@ -1,16 +1,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover-cdns
job-defaults:
name: notify-release-drivers-push
description: Sends email to release-drivers telling release was pushed.
--- a/taskcluster/ci/release-notify-ship/kind.yml
+++ b/taskcluster/ci/release-notify-ship/kind.yml
@@ -1,16 +1,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- push-apk
- release-balrog-publishing
- release-bouncer-aliases
- release-version-bump
- release-mark-as-shipped
--- a/taskcluster/ci/release-partner-repack/kind.yml
+++ b/taskcluster/ci/release-partner-repack/kind.yml
@@ -3,16 +3,17 @@
# 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.partner_repack:transforms
- taskgraph.transforms.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- post-beetmover-dummy
job-defaults:
description: Release Promotion partner repacks
worker-type: buildbot-bridge/buildbot-bridge
--- a/taskcluster/ci/release-secondary-balrog-publishing/kind.yml
+++ b/taskcluster/ci/release-secondary-balrog-publishing/kind.yml
@@ -3,16 +3,17 @@
# 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.release_balrog_publishing:transforms
- taskgraph.transforms.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- post-balrog-dummy
- post-beetmover-dummy
- release-updates-builder
job-defaults:
--- a/taskcluster/ci/release-secondary-final-verify/kind.yml
+++ b/taskcluster/ci/release-secondary-final-verify/kind.yml
@@ -7,16 +7,17 @@ loader: taskgraph.loader.transform:loade
kind-dependencies:
- post-balrog-dummy
- post-beetmover-dummy
- release-updates-builder
transforms:
- taskgraph.transforms.release_deps:transforms
- taskgraph.transforms.final_verify:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
job-defaults:
name: secondary-final-verify
run-on-projects: [] # to make sure this never runs as part of CI
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
implementation: docker-worker
--- a/taskcluster/ci/release-secondary-notify-ship/kind.yml
+++ b/taskcluster/ci/release-secondary-notify-ship/kind.yml
@@ -1,16 +1,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- release-secondary-balrog-publishing
- push-apk
job-defaults:
name: notify-release-drivers-ship
--- a/taskcluster/ci/release-secondary-update-verify/kind.yml
+++ b/taskcluster/ci/release-secondary-update-verify/kind.yml
@@ -7,16 +7,17 @@ loader: taskgraph.loader.transform:loade
kind-dependencies:
- post-balrog-dummy
- post-beetmover-dummy
- release-updates-builder
transforms:
- taskgraph.transforms.release_deps:transforms
- taskgraph.transforms.update_verify:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
job-defaults:
name: secondary-update-verify
run-on-projects: [] # to make sure this never runs as part of CI
shipping-phase: promote
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
--- a/taskcluster/ci/release-snap/kind.yml
+++ b/taskcluster/ci/release-snap/kind.yml
@@ -2,16 +2,17 @@
# 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.release_snap:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- post-beetmover-dummy
job-defaults:
description: Generates snap image
run-on-projects: [] # to make sure this never runs as part of CI
--- a/taskcluster/ci/release-source-signing/kind.yml
+++ b/taskcluster/ci/release-source-signing/kind.yml
@@ -3,15 +3,16 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
loader: taskgraph.loader.build_signing:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.build_signing:transforms
- taskgraph.transforms.signing:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- release-source
job-template:
shipping-phase: promote
--- a/taskcluster/ci/release-source/kind.yml
+++ b/taskcluster/ci/release-source/kind.yml
@@ -7,16 +7,17 @@ loader: taskgraph.loader.transform:loade
kind-dependencies:
- toolchain
transforms:
- taskgraph.transforms.build:transforms
- taskgraph.transforms.build_attrs:transforms
- taskgraph.transforms.build_lints:transforms
- taskgraph.transforms.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
jobs-from:
- source.yml
job-defaults:
shipping-phase: promote
notifications:
--- a/taskcluster/ci/release-update-verify/kind.yml
+++ b/taskcluster/ci/release-update-verify/kind.yml
@@ -7,16 +7,17 @@ loader: taskgraph.loader.transform:loade
kind-dependencies:
- post-balrog-dummy
- post-beetmover-dummy
- release-updates-builder
transforms:
- taskgraph.transforms.release_deps:transforms
- taskgraph.transforms.update_verify:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
job-defaults:
name: update-verify
run-on-projects: [] # to make sure this never runs as part of CI
shipping-phase: promote
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
worker:
--- a/taskcluster/ci/release-updates-builder/kind.yml
+++ b/taskcluster/ci/release-updates-builder/kind.yml
@@ -7,16 +7,17 @@ loader: taskgraph.loader.transform:loade
kind-dependencies:
# For the $platform_info.txt files.
- post-beetmover-dummy
transforms:
- taskgraph.transforms.release_deps:transforms
- taskgraph.transforms.release_updates:transforms
- taskgraph.transforms.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
job-defaults:
name: updates
run-on-projects: [] # to make sure this never runs in CI
shipping-phase: promote
worker-type: buildbot-bridge/buildbot-bridge
run:
--- a/taskcluster/ci/release-uptake-monitoring/kind.yml
+++ b/taskcluster/ci/release-uptake-monitoring/kind.yml
@@ -2,16 +2,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover-cdns
job-defaults:
description: Uptake monitoring job
worker-type: buildbot-bridge/buildbot-bridge
--- a/taskcluster/ci/release-version-bump/kind.yml
+++ b/taskcluster/ci/release-version-bump/kind.yml
@@ -2,16 +2,17 @@
# 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.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- beetmover-cdns
job-defaults:
description: Release Promotion version bump
worker-type: buildbot-bridge/buildbot-bridge
--- a/taskcluster/ci/repackage-l10n/kind.yml
+++ b/taskcluster/ci/repackage-l10n/kind.yml
@@ -5,16 +5,17 @@
loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.repackage_l10n:transforms
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.repackage:transforms
- taskgraph.transforms.use_toolchains:transforms
- taskgraph.transforms.job:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- nightly-l10n-signing
- toolchain
only-for-build-platforms:
- linux-nightly/opt
--- a/taskcluster/ci/repackage-signing/kind.yml
+++ b/taskcluster/ci/repackage-signing/kind.yml
@@ -3,16 +3,17 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
loader: taskgraph.loader.single_dep:loader
transforms:
- taskgraph.transforms.name_sanity:transforms
- taskgraph.transforms.repackage_signing:transforms
- taskgraph.transforms.repackage_routes:transforms
+ - taskgraph.transforms.release_notifications:transforms
- taskgraph.transforms.task:transforms
kind-dependencies:
- repackage
- repackage-l10n
only-for-build-platforms:
- linux-nightly/opt
--- a/taskcluster/taskgraph/transforms/beetmover_cdns.py
+++ b/taskcluster/taskgraph/transforms/beetmover_cdns.py
@@ -39,16 +39,17 @@ beetmover_cdns_description_schema = Sche
Optional('run-on-projects'): task_description_schema['run-on-projects'],
Required('worker-type'): optionally_keyed_by('project', basestring),
Optional('dependencies'): {basestring: taskref_or_string},
Optional('index'): {basestring: basestring},
Optional('routes'): [basestring],
Required('shipping-phase'): task_description_schema['shipping-phase'],
Required('shipping-product'): task_description_schema['shipping-product'],
Optional('notifications'): task_description_schema['notifications'],
+ Optional('extra'): task_description_schema['extra'],
})
@transforms.add
def validate(config, jobs):
for job in jobs:
label = job['name']
validate_schema(
@@ -88,17 +89,19 @@ def make_beetmover_cdns_description(conf
'scopes': [bucket_scope, action_scope],
'product': job['product'],
'dependencies': job['dependencies'],
'attributes': job.get('attributes', {}),
'run-on-projects': job.get('run-on-projects'),
'treeherder': treeherder,
'shipping-phase': job.get('shipping-phase', 'push'),
'shipping-product': job.get('shipping-product'),
- 'notifications': job.get('notifications'),
+ 'notifications': job.get('notifications', {}),
+ 'routes': job.get('routes', []),
+ 'extra': job.get('extra', {}),
}
yield task
@transforms.add
def make_beetmover_cdns_worker(config, jobs):
for job in jobs:
new file mode 100644
--- /dev/null
+++ b/taskcluster/taskgraph/transforms/release_notifications.py
@@ -0,0 +1,76 @@
+# 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/.
+"""
+Add notifications via taskcluster-notify for release tasks
+"""
+
+from __future__ import absolute_import, print_function, unicode_literals
+
+from taskgraph.transforms.base import TransformSequence
+from taskgraph.util.scriptworker import get_release_config, RELEASE_NOTIFICATION_PHASES
+
+
+transforms = TransformSequence()
+
+EMAIL_DESTINATIONS = {
+ 'mozilla-beta': ["release-automation-notifications@mozilla.com"],
+ 'mozilla-release': ["release-automation-notifications@mozilla.com"],
+ 'mozilla-esr60': ["release-automation-notifications@mozilla.com"],
+ 'maple': ["release+tcstaging@mozilla.com"],
+ 'jamun': ["release+tcstaging@mozilla.com"],
+ # otherwise []
+}
+
+# Only notify on tasks that have issues
+DEFAULT_ROUTES = [
+ 'notify.email.{email_dest}.on-failed',
+ 'notify.email.{email_dest}.on-exception',
+]
+
+SUBJECT_TEMPLATE = "${{status.state}}: [{shipping_product} {release_config[version]} " + \
+ "build{release_config[build_number]}/{config[params][project]}] {label}"
+
+
+@transforms.add
+def add_notifications(config, jobs):
+ release_config = get_release_config(config)
+ email_dest = EMAIL_DESTINATIONS.get(config.params['project'], [])
+
+ for job in jobs:
+ # Frankly, my dear, you're all over the place
+ shipping_phase = job.get('attributes', {}).get('shipping_phase') or \
+ job.get('shipping-phase')
+ shipping_product = job.get('attributes', {}).get('shipping_product') or \
+ job.get('shipping-product')
+ label = job.get('label') or '{}-{}'.format(config.kind, job['name'])
+
+ # We only modify release jobs, or nightly & release being run in the context of a release
+ if shipping_phase in RELEASE_NOTIFICATION_PHASES and \
+ config.params['target_tasks_method'].startswith(RELEASE_NOTIFICATION_PHASES):
+
+ format_kwargs = dict(
+ label=label,
+ shipping_product=shipping_product,
+ config=config.__dict__,
+ release_config=release_config,
+ )
+
+ # Add routes to trigger notifications via tc-notify
+ for dest in email_dest:
+ job.setdefault('routes', []).extend(
+ [r.format(email_dest=dest) for r in DEFAULT_ROUTES]
+ )
+
+ # Customize the email subject to include release name and build number
+ job.setdefault('extra', {}).update(
+ {
+ 'notify': {
+ 'email': {
+ 'subject': SUBJECT_TEMPLATE.format(**format_kwargs)
+ }
+ }
+ }
+ )
+
+ yield job
--- a/taskcluster/taskgraph/util/scriptworker.py
+++ b/taskcluster/taskgraph/util/scriptworker.py
@@ -249,16 +249,21 @@ PUSH_APK_SCOPE_ALIAS_TO_PROJECT = [[
PUSH_APK_SCOPES = {
'central': 'googleplay:aurora',
'beta': 'googleplay:beta',
'release': 'googleplay:release',
'default': 'googleplay:invalid',
}
+""" The list of the release promotion phases which we send notifications for
+"""
+RELEASE_NOTIFICATION_PHASES = ('promote', 'push', 'ship')
+
+
def add_scope_prefix(config, scope):
"""
Prepends the scriptworker scope prefix from the :ref:`graph config
<taskgraph-graph-config>`.
Args:
config (TransformConfig): The configuration for the kind being transformed.
scope (string): The suffix of the scope