Bug 1424482 - part 2: Remove upstream artifact when no path is defined r=mtabara a=bustage FIREFOX_BETA_60_BASE
authorJohan Lorenzo <jlorenzo@mozilla.com>
Thu, 01 Mar 2018 14:07:23 +0100
changeset 444817 e33efdb3e1517d521deb949de3fcd6d9946ea440
parent 444810 0f8f71b0b9d84e7732c07f841e395de516b31b66
child 444860 426ef843d356879b3d1079d0ea7d867ff5a71b8c
push id8
push userbugmail@asutherland.org
push dateSat, 11 Aug 2018 16:11:21 +0000
reviewersmtabara, bustage
bugs1424482
milestone60.0a1
Bug 1424482 - part 2: Remove upstream artifact when no path is defined r=mtabara a=bustage
taskcluster/taskgraph/transforms/beetmover.py
--- a/taskcluster/taskgraph/transforms/beetmover.py
+++ b/taskcluster/taskgraph/transforms/beetmover.py
@@ -405,29 +405,35 @@ def generate_upstream_artifacts(signing_
     build_mapping = UPSTREAM_ARTIFACT_UNSIGNED_PATHS
     signing_mapping = UPSTREAM_ARTIFACT_SIGNED_PATHS
 
     artifact_prefix = 'public/build'
     if locale:
         artifact_prefix = 'public/build/{}'.format(locale)
         platform = "{}-l10n".format(platform)
 
-    upstream_artifacts = [{
-        "taskId": {"task-reference": build_task_ref},
-        "taskType": "build",
-        "paths": ["{}/{}".format(artifact_prefix, p)
-                  for p in build_mapping[platform]],
-        "locale": locale or "en-US",
-        }, {
+    upstream_artifacts = []
+
+    # Some platforms (like android-api-16-nightly-l10n) may not depend on any unsigned artifact
+    if build_mapping[platform]:
+        upstream_artifacts.append({
+            "taskId": {"task-reference": build_task_ref},
+            "taskType": "build",
+            "paths": ["{}/{}".format(artifact_prefix, p)
+                      for p in build_mapping[platform]],
+            "locale": locale or "en-US",
+        })
+
+    upstream_artifacts.append({
         "taskId": {"task-reference": signing_task_ref},
         "taskType": "signing",
         "paths": ["{}/{}".format(artifact_prefix, p)
                   for p in signing_mapping[platform]],
         "locale": locale or "en-US",
-    }]
+    })
 
     if not locale and "android" in platform:
         # edge case to support 'multi' locale paths
         multi_platform = "{}-multi".format(platform)
         upstream_artifacts.extend([{
             "taskId": {"task-reference": build_task_ref},
             "taskType": "build",
             "paths": ["{}/{}".format(artifact_prefix, p)