Bug 1384482 - Make Fennec relpro use api-16 on beta r=mtabara
authorJohan Lorenzo <jlorenzo@mozilla.com>
Fri, 25 Aug 2017 16:58:53 +0200
changeset 5197 75f658918e77914a75099458f105bdf97542edb3
parent 5194 8915fbee78ed2e931053d8409bea40a598ef52d8
child 5198 dfeb07934f0f7b9e2614c5ba31febde566c66259
child 5224 1b2af609b8f746ae0a64fd6b91e6e1025f75643b
push id3673
push userbmo:jlorenzo@mozilla.com
push dateMon, 28 Aug 2017 12:07:09 +0000
reviewersmtabara
bugs1384482
Bug 1384482 - Make Fennec relpro use api-16 on beta r=mtabara MozReview-Commit-ID: LTy66BLz60R
process/release.py
--- a/process/release.py
+++ b/process/release.py
@@ -2179,44 +2179,51 @@ def generateReleasePromotionBuilders(bra
     # Don't merge release builder requests
     nomergeBuilders.update([b['name'] for b in builders])
 
     # Make sure builders have the right properties
     addBuilderProperties(builders)
 
     return builders
 
+# TODO: Add mozilla-beta.
+# TODO: Add mozilla-release once Fennec 56 reaches release
+BRANCHES_WITH_API_LEVEL_16 = ('jamun',)
+
 
 def generateFennecReleasePromotionBuilders(branch_config, branch_name, product,
                                            secrets):
     builders = []
     category_name = "release-%s" % branch_name
     tools_repo_path = branch_config.get('build_tools_repo_path')
     tools_repo = '%s%s' % (branch_config['hgurl'], tools_repo_path)
 
+    api_level = 'api-16' if branch_name in BRANCHES_WITH_API_LEVEL_16 else 'api-15'
+    arm_platform = 'android-%s' % api_level
+    arm_platform_config = branch_config['platforms'][arm_platform]
+
     bouncer_mh_cfg = {
         "script_name": "scripts/bouncer_submitter.py",
         "extra_args": [
              "-c",  branch_config['bouncer_submitter_config'][product],
              "--credentials-file", "oauth.txt",
              "--bouncer-api-prefix", branch_config['tuxedoServerUrl'],
              "--repo", branch_config['repo_path'],
         ]
     }
 
     bouncer_buildername = "release-{branch}-{product}_bncr_sub".format(
         branch=branch_name, product=product)
-    # Explicitly define pf using the slave platform (android-api-15 in this case)
     bouncer_submitter_factory = makeMHFactory(
-        config=branch_config, pf=branch_config["platforms"]['android-api-15'],
+        config=branch_config, pf=arm_platform_config,
         mh_cfg=bouncer_mh_cfg, use_credentials_file=True)
 
     bouncer_builder = {
         "name": bouncer_buildername,
-        "slavenames": branch_config["platforms"]["android-api-15"]["slaves"],
+        "slavenames": arm_platform_config["slaves"],
         "builddir": bouncer_buildername,
         "slavebuilddir": normalizeName(bouncer_buildername),
         "factory": bouncer_submitter_factory,
         "category": category_name,
         "properties": {
             "branch": branch_name,
             "platform": None,
             "product": product,
@@ -2227,24 +2234,23 @@ def generateFennecReleasePromotionBuilde
     version_bump_mh_cfg = {
         "script_name": "scripts/release/postrelease_version_bump.py",
         "extra_args": [
              "-c",  branch_config['postrelease_version_bump_config'][product],
         ]
     }
     version_bump_buildername = "release-{branch}-{product}_version_bump".format(
         branch=branch_name, product=product)
-    # Explicitly define pf using the slave platform (android-api-15 in this case)
     version_bump_submitter_factory = makeMHFactory(
-        config=branch_config, pf=branch_config["platforms"]['android-api-15'],
+        config=branch_config, pf=arm_platform_config,
         mh_cfg=version_bump_mh_cfg, use_credentials_file=True)
 
     version_bump_builder = {
         "name": version_bump_buildername,
-        "slavenames": branch_config["platforms"]["android-api-15"]["slaves"],
+        "slavenames": arm_platform_config["slaves"],
         "builddir": version_bump_buildername,
         "slavebuilddir": normalizeName(version_bump_buildername),
         "factory": version_bump_submitter_factory,
         "category": category_name,
         "properties": {
             "branch": branch_name,
             "platform": None,
             "product": product,
@@ -2256,24 +2262,23 @@ def generateFennecReleasePromotionBuilde
     uptake_monitoring_mh_cfg = {
         "script_name": "scripts/release/uptake_monitoring.py",
         "extra_args": [
              "-c",  branch_config['uptake_monitoring_config'][product],
         ]
     }
     uptake_monitoring_buildername = "release-{branch}-{product}_uptake_monitoring".format(
         branch=branch_name, product=product)
-    # Explicitly define pf using the slave platform (android-api-15 in this case)
     uptake_monitoring_submitter_factory = makeMHFactory(
-        config=branch_config, pf=branch_config["platforms"]['android-api-15'],
+        config=branch_config, pf=arm_platform_config,
         mh_cfg=uptake_monitoring_mh_cfg, use_credentials_file=True)
 
     uptake_monitoring_builder = {
         "name": uptake_monitoring_buildername,
-        "slavenames": branch_config["platforms"]["android-api-15"]["slaves"],
+        "slavenames": arm_platform_config["slaves"],
         "builddir": uptake_monitoring_buildername,
         "slavebuilddir": normalizeName(uptake_monitoring_buildername),
         "factory": uptake_monitoring_submitter_factory,
         "category": category_name,
         "properties": {
             "branch": branch_name,
             "platform": None,
             "product": product,
@@ -2285,24 +2290,23 @@ def generateFennecReleasePromotionBuilde
     bouncer_aliases_mh_cfg = {
         "script_name": "scripts/release/postrelease_bouncer_aliases.py",
         "extra_args": [
              "-c",  branch_config['postrelease_bouncer_aliases_config'][product],
         ]
     }
     bouncer_aliases_buildername = "release-{branch}-{product}_bouncer_aliases".format(
         branch=branch_name, product=product)
-    # Explicitly define pf using the slave platform (android-api-15 in this case)
     bouncer_aliases_submitter_factory = makeMHFactory(
-        config=branch_config, pf=branch_config["platforms"]['android-api-15'],
+        config=branch_config, pf=arm_platform_config,
         mh_cfg=bouncer_aliases_mh_cfg, use_credentials_file=True)
 
     bouncer_aliases_builder = {
         "name": bouncer_aliases_buildername,
-        "slavenames": branch_config["platforms"]["android-api-15"]["slaves"],
+        "slavenames": arm_platform_config["slaves"],
         "builddir": bouncer_aliases_buildername,
         "slavebuilddir": normalizeName(bouncer_aliases_buildername),
         "factory": bouncer_aliases_submitter_factory,
         "category": category_name,
         "properties": {
             "branch": branch_name,
             "platform": None,
             "product": product,
@@ -2314,24 +2318,23 @@ def generateFennecReleasePromotionBuilde
     mark_as_shipped_mh_cfg = {
         "script_name": "scripts/release/postrelease_mark_as_shipped.py",
         "extra_args": [
              "-c",  branch_config['postrelease_mark_as_shipped_config'][product],
         ]
     }
     mark_as_shipped_buildername = "release-{branch}-{product}_mark_as_shipped".format(
         branch=branch_name, product=product)
-    # Explicitly define pf using the slave platform (android-api-15 in this case)
     mark_as_shipped_submitter_factory = makeMHFactory(
-        config=branch_config, pf=branch_config["platforms"]['android-api-15'],
+        config=branch_config, pf=arm_platform_config,
         mh_cfg=mark_as_shipped_mh_cfg, use_credentials_file=True)
 
     mark_as_shipped_builder = {
         "name": mark_as_shipped_buildername,
-        "slavenames": branch_config["platforms"]["android-api-15"]["slaves"],
+        "slavenames": arm_platform_config["slaves"],
         "builddir": mark_as_shipped_buildername,
         "slavebuilddir": normalizeName(mark_as_shipped_buildername),
         "factory": mark_as_shipped_submitter_factory,
         "category": category_name,
         "properties": {
             "branch": branch_name,
             "platform": None,
             "product": product,
@@ -2346,28 +2349,28 @@ def generateFennecReleasePromotionBuilde
     if product == 'fennec':
         extra_extra_args = ['--add-action=copy-info-files']
     checksums_mh_cfg = {
         'script_name': 'scripts/release/generate-checksums.py',
         'extra_args': [
             "--stage-product", branch_config["stage_product"][product],
             "--bucket-name-full", branch_config["beetmover_buckets"][product],
             "--credentials", branch_config["beetmover_credentials"],
-            "--tools-repo", branch_config["platforms"]["android-api-15"]["tools_repo_cache"],
+            "--tools-repo", arm_platform_config["tools_repo_cache"],
         ] + extra_extra_args
     }
     checksums_factory = makeMHFactory(
-        config=branch_config, pf=branch_config['platforms']['android-api-15'],
+        config=branch_config, pf=arm_platform_config,
         mh_cfg=checksums_mh_cfg,
         signingServers=secrets.get("release-signing"),
     )
     checksums_builder = {
         'name': checksums_buildername,
         'slavenames': branch_config['platforms']['android-x86']['slaves'] +
-                      branch_config['platforms']['android-api-15']['slaves'],
+                      arm_platform_config['slaves'],
         'category': category_name,
         'builddir': checksums_buildername,
         'slavebuilddir': normalizeName(checksums_buildername),
         'factory': checksums_factory,
         'properties': {
             'branch': branch_name,
             'platform': None,
             'product': product,