зеркало из https://github.com/mozilla/gecko-dev.git
bug 1431799 - add RC secondary tasks. r=bhearsum
MozReview-Commit-ID: 2hq4K5QVbWy --HG-- rename : taskcluster/ci/release-balrog-publishing/kind.yml => taskcluster/ci/release-secondary-balrog-publishing/kind.yml rename : taskcluster/ci/release-notify-ship/kind.yml => taskcluster/ci/release-secondary-notify-ship/kind.yml extra : rebase_source : 58a1297f50f182209290a1a968ece11eb8216e13 extra : source : 4887dd855680205a24f34f54a64a85de31d1bfa9
This commit is contained in:
Родитель
5795b692ae
Коммит
86f7b2f5e3
|
@ -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.release_balrog_publishing:transforms
|
||||
- taskgraph.transforms.job:transforms
|
||||
- taskgraph.transforms.task:transforms
|
||||
|
||||
kind-dependencies:
|
||||
- post-balrog-dummy
|
||||
- post-beetmover-dummy
|
||||
- release-updates-builder
|
||||
|
||||
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-secondary-rc:
|
||||
name: release-firefox_schedule_publishing_in_balrog
|
||||
shipping-product: firefox
|
||||
run:
|
||||
product: firefox
|
||||
buildername: release-{branch}-firefox_schedule_publishing_in_balrog
|
||||
channels:
|
||||
by-project:
|
||||
birch: beta
|
||||
mozilla-release: beta
|
||||
default: unknown
|
||||
index:
|
||||
product: firefox
|
|
@ -0,0 +1,56 @@
|
|||
# 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.task:transforms
|
||||
|
||||
kind-dependencies:
|
||||
- release-secondary-balrog-publishing
|
||||
|
||||
job-defaults:
|
||||
name: notify-release-drivers-ship
|
||||
description: Sends email to release-drivers telling release was shipped.
|
||||
run-on-projects: []
|
||||
shipping-phase: ship
|
||||
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"
|
||||
notifications:
|
||||
completed:
|
||||
subject: "{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]} has shipped!"
|
||||
message: "{task[shipping-product]} {release_config[version]} build{release_config[build_number]}/{config[params][project]} has shipped!"
|
||||
plugins: ["ses"]
|
||||
emails:
|
||||
by-project:
|
||||
mozilla-beta: ["release-signoff@mozilla.org"]
|
||||
mozilla-release: ["release-signoff@mozilla.org"]
|
||||
try: ["{task_def[metadata][owner]}"]
|
||||
maple: ["release+tcstaging@mozilla.com"]
|
||||
default: []
|
||||
routes:
|
||||
- index.releases.v1.{branch}.{revision}.{product}-rc.{underscore_version}.build{build_number}.email-{channel}
|
||||
- index.releases.v1.{branch}.latest.{product}-rc.latest.email-{channel}
|
||||
index:
|
||||
type: release
|
||||
channel:
|
||||
by-project:
|
||||
mozilla-release: beta
|
||||
birch: birch
|
||||
default: unknown
|
||||
|
||||
jobs:
|
||||
firefox-rc:
|
||||
shipping-product: firefox
|
||||
index:
|
||||
product: firefox
|
|
@ -255,6 +255,10 @@ release-notify-ship
|
|||
----------------------
|
||||
Notify when a release has been shipped.
|
||||
|
||||
release-secondary-notify-ship
|
||||
----------------------
|
||||
Notify when an RC release has been shipped to the beta channel.
|
||||
|
||||
release-notify-promote
|
||||
----------------------
|
||||
Notify when a release has been promoted.
|
||||
|
@ -281,7 +285,11 @@ Verifies the contents and package of release update MARs.
|
|||
|
||||
release-secondary-final-verify
|
||||
---------------------
|
||||
Verifies the contents and package of release update MARs.
|
||||
Verifies the contents and package of release update MARs for RC releases.
|
||||
|
||||
release-secondary-balrog-publishing
|
||||
---------------------
|
||||
Schedule an RC release to go live in Balrog. Usually this will happen on the beta channel, to a smaller audience, before the RC goes live on the release channel.
|
||||
|
||||
release-update-verify
|
||||
---------------------
|
||||
|
|
|
@ -369,17 +369,34 @@ def target_tasks_push_firefox(full_task_graph, parameters, graph_config):
|
|||
def target_tasks_ship_firefox(full_task_graph, parameters, graph_config):
|
||||
"""Select the set of tasks required to ship firefox.
|
||||
Previous build deps will be optimized out via action task."""
|
||||
filtered_for_candidates = target_tasks_push_firefox(
|
||||
full_task_graph, parameters, graph_config,
|
||||
)
|
||||
is_rc = (parameters.get('desktop_release_type') == 'rc')
|
||||
if is_rc:
|
||||
# ship_firefox_rc runs after `promote` rather than `push`; include
|
||||
# all promote tasks.
|
||||
filtered_for_candidates = target_tasks_promote_firefox(
|
||||
full_task_graph, parameters, graph_config,
|
||||
)
|
||||
else:
|
||||
# ship_firefox runs after `push`; include all push tasks.
|
||||
filtered_for_candidates = target_tasks_push_firefox(
|
||||
full_task_graph, parameters, graph_config,
|
||||
)
|
||||
|
||||
def filter(task):
|
||||
# Include promotion tasks; these will be optimized out
|
||||
if task.label in filtered_for_candidates:
|
||||
return True
|
||||
if task.attributes.get('shipping_product') == 'firefox' and \
|
||||
task.attributes.get('shipping_phase') == 'ship':
|
||||
return True
|
||||
if task.attributes.get('shipping_product') != 'firefox' or \
|
||||
task.attributes.get('shipping_phase') != 'ship':
|
||||
return False
|
||||
|
||||
if task.kind in (
|
||||
'release-secondary-balrog-publishing',
|
||||
'release-secondary-notify-ship',
|
||||
):
|
||||
return is_rc
|
||||
else:
|
||||
return not is_rc
|
||||
|
||||
return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче