diff options
Diffstat (limited to 'taskcluster/gecko_taskgraph/transforms/signing.py')
-rw-r--r-- | taskcluster/gecko_taskgraph/transforms/signing.py | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/taskcluster/gecko_taskgraph/transforms/signing.py b/taskcluster/gecko_taskgraph/transforms/signing.py index 1bf91effd1..760f9f122f 100644 --- a/taskcluster/gecko_taskgraph/transforms/signing.py +++ b/taskcluster/gecko_taskgraph/transforms/signing.py @@ -61,6 +61,14 @@ signing_description_schema = Schema( ) +def get_locales_description(attributes, default): + """Returns the [list] of locales for task description usage""" + chunk_locales = attributes.get("chunk_locales") + if chunk_locales: + return ", ".join(chunk_locales) + return attributes.get("locale", default) + + @transforms.add def delete_name(config, jobs): """Delete the 'name' key if it exists, we don't use it.""" @@ -77,6 +85,7 @@ transforms.add_validate(signing_description_schema) def add_requirements_link(config, jobs): for job in jobs: dep_job = get_primary_dependency(config, job) + assert dep_job requirements_path = evaluate_keyed_by( config.graph_config["mac-signing"]["mac-requirements"], "mac requirements", @@ -95,6 +104,7 @@ def add_requirements_link(config, jobs): def make_task_description(config, jobs): for job in jobs: dep_job = get_primary_dependency(config, job) + assert dep_job attributes = dep_job.attributes signing_format_scopes = [] @@ -105,6 +115,7 @@ def make_task_description(config, jobs): is_shippable = dep_job.attributes.get("shippable", False) build_platform = dep_job.attributes.get("build_platform") + assert build_platform treeherder = None if "partner" not in config.kind and "eme-free" not in config.kind: treeherder = job.get("treeherder", {}) @@ -139,9 +150,9 @@ def make_task_description(config, jobs): label = job["label"] description = ( - "Initial Signing for locale '{locale}' for build '" + "Signing of locale(s) '{locale}' for build '" "{build_platform}/{build_type}'".format( - locale=attributes.get("locale", "en-US"), + locale=get_locales_description(attributes, "en-US"), build_platform=build_platform, build_type=attributes.get("build_type"), ) @@ -187,10 +198,16 @@ def make_task_description(config, jobs): # build-mac-{signing,notarization} uses signingscript instead of iscript if "macosx" in build_platform and config.kind.endswith("-mac-notarization"): - task["worker"]["mac-behavior"] = "apple_notarization" task["scopes"] = [ add_scope_prefix(config, "signing:cert:release-apple-notarization") ] + task[ + "description" + ] = "Notarization of '{}' locales for build '{}/{}'".format( + get_locales_description(attributes, "en-US"), + build_platform, + attributes.get("build_type"), + ) elif "macosx" in build_platform: # iscript overrides task["worker"]["mac-behavior"] = "mac_sign_and_pkg" |