From 9e89a175916f4869616d4c11c9e4806e5745bd10 Mon Sep 17 00:00:00 2001 From: Johan Lorenzo Date: Thu, 23 Apr 2020 11:24:20 +0200 Subject: [PATCH] Bug 1631839 - part 1: Expose new routes without `project.` (#10092) --- .taskcluster.yml | 7 +++++++ taskcluster/ci/config.yml | 2 +- taskcluster/fenix_taskgraph/routes.py | 15 ++++++++++++--- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/.taskcluster.yml b/.taskcluster.yml index e516f30ce..35de1a5ed 100644 --- a/.taskcluster.yml +++ b/.taskcluster.yml @@ -168,11 +168,18 @@ tasks: # staging release promotion on forks. - $if: 'tasks_for == "github-push"' then: + - index.mobile.v2.${project}.branch.${short_head_branch}.latest.taskgraph.decision + - index.mobile.v2.${project}.branch.${short_head_branch}.revision.${head_sha}.taskgraph.decision + # TODO Bug 1631839: Remove the following routes once all consumers have migrated - index.project.mobile.${project}.v2.branch.${short_head_branch}.latest.taskgraph.decision - index.project.mobile.${project}.v2.branch.${short_head_branch}.revision.${head_sha}.taskgraph.decision - $if: 'tasks_for == "cron"' then: # cron context provides ${head_branch} as a short one + - index.mobile.v2.${project}.branch.${head_branch}.latest.taskgraph.decision-${cron.job_name} + - index.mobile.v2.${project}.branch.${head_branch}.revision.${head_sha}.taskgraph.decision-${cron.job_name} + - index.mobile.v2.${project}.branch.${head_branch}.revision.${head_sha}.taskgraph.cron.${ownTaskId} + # TODO Bug 1631839: Remove the following routes once all consumers have migrated - index.project.mobile.${project}.v2.branch.${head_branch}.latest.taskgraph.decision-${cron.job_name} - index.project.mobile.${project}.v2.branch.${head_branch}.revision.${head_sha}.taskgraph.decision-${cron.job_name} - index.project.mobile.${project}.v2.branch.${head_branch}.revision.${head_sha}.taskgraph.cron.${ownTaskId} diff --git a/taskcluster/ci/config.yml b/taskcluster/ci/config.yml index 8d68d9331..b8e23a156 100644 --- a/taskcluster/ci/config.yml +++ b/taskcluster/ci/config.yml @@ -25,7 +25,7 @@ taskgraph: repositories: mobile: name: "Fenix" - cached-task-prefix: project.mobile.fenix + cached-task-prefix: mobile.v2.fenix decision-parameters: 'fenix_taskgraph.parameters:get_decision_parameters' workers: diff --git a/taskcluster/fenix_taskgraph/routes.py b/taskcluster/fenix_taskgraph/routes.py index a1771cd59..6f7d03beb 100644 --- a/taskcluster/fenix_taskgraph/routes.py +++ b/taskcluster/fenix_taskgraph/routes.py @@ -12,6 +12,12 @@ from taskgraph.transforms.task import index_builder # In the future, notifying consumers may be easier (https://bugzilla.mozilla.org/show_bug.cgi?id=1548810), but # we need to remember to tell users for the time being SIGNING_ROUTE_TEMPLATES = [ + "index.{trust-domain}.v2.{project}.{variant}.latest.{abi}", + "index.{trust-domain}.v2.{project}.{variant}.{build_date}.revision.{head_rev}.{abi}", + "index.{trust-domain}.v2.{project}.{variant}.{build_date}.latest.{abi}", + "index.{trust-domain}.v2.{project}.{variant}.revision.{head_rev}.{abi}", + + # TODO Bug 1631839: Remove the following scopes once all consumers have migrated "index.project.{trust-domain}.{project}.v2.{variant}.{build_date}.revision.{head_rev}", "index.project.{trust-domain}.{project}.v2.{variant}.{build_date}.latest", "index.project.{trust-domain}.{project}.v2.{variant}.latest", @@ -20,8 +26,6 @@ SIGNING_ROUTE_TEMPLATES = [ @index_builder("signing") def add_signing_indexes(config, task): - routes = task.setdefault("routes", []) - if config.params["level"] != "3": return task @@ -32,6 +36,11 @@ def add_signing_indexes(config, task): subs["trust-domain"] = config.graph_config["trust-domain"] subs["variant"] = task["attributes"]["build-type"] + unique_routes = set() for tpl in SIGNING_ROUTE_TEMPLATES: - routes.append(tpl.format(**subs)) + for abi in task["attributes"]["apks"].keys(): + subs["abi"] = abi + unique_routes.add(tpl.format(**subs)) + + task.setdefault("routes", sorted(list(unique_routes))) return task