Bug 1373647 - Add release_eta r=bhearsum draft
authorRail Aliiev <rail@mozilla.com>
Fri, 16 Jun 2017 10:30:54 -0400
changeset 7838 8983d89f3cd65feaa3ffe61e55694593c2afe244
parent 7837 e3c9fa4769af60d80417e091d88fe4d49d5da602
push id226
push userbmo:rail@mozilla.com
push dateFri, 16 Jun 2017 14:32:11 +0000
reviewersbhearsum
bugs1373647
Bug 1373647 - Add release_eta r=bhearsum MozReview-Commit-ID: DzhShXk1ynY
buildfarm/release/release-runner.py
buildfarm/release/releasetasks_graph_gen.py
lib/python/kickoff/__init__.py
--- a/buildfarm/release/release-runner.py
+++ b/buildfarm/release/release-runner.py
@@ -430,16 +430,17 @@ def main(options):
 
             kwargs = {
                 "public_key": docker_worker_key,
                 "version": release["version"],
                 # ESR should not use "esr" suffix here:
                 "next_version": bump_version(release["version"].replace("esr", "")),
                 "appVersion": getAppVersion(release["version"]),
                 "buildNumber": release["buildNumber"],
+                "release_eta": release.get("release_eta"),
                 "source_enabled": True,
                 "checksums_enabled": True,
                 "repo_path": release["branch"],
                 "revision": release["mozillaRevision"],
                 "product": release["product"],
                 "funsize_product": get_funsize_product(release["product"]),
                 # if mozharness_revision is not passed, use 'revision'
                 "mozharness_changeset": release.get('mh_changeset') or release['mozillaRevision'],
--- a/buildfarm/release/releasetasks_graph_gen.py
+++ b/buildfarm/release/releasetasks_graph_gen.py
@@ -112,16 +112,17 @@ def main(release_runner_config, release_
         ),
         "extra_balrog_submitter_params": release_config['extra_balrog_submitter_params'],
         "publish_to_balrog_channels": release_config["publish_to_balrog_channels"],
         "postrelease_mark_as_shipped_enabled": release_config["postrelease_mark_as_shipped_enabled"],
         # TODO: use [] when snaps_enabled is landed
         "snap_enabled": release_config.get("snap_enabled", False),
         "update_verify_channel": release_config["update_verify_channel"],
         "update_verify_requires_cdn_push": release_config["update_verify_requires_cdn_push"],
+        "release_eta": release_config.get("release_eta"),
     }
 
     graph = make_task_graph_strict_kwargs(**kwargs)
     log.info("Submitting task graph")
     import pprint
     log.info(pprint.pformat(graph, indent=4, width=160))
     if not options.dry_run:
         print scheduler.createTaskGraph(graph_id, graph)
@@ -131,16 +132,17 @@ def get_items_from_common_tc_task(common
     tc_task_items = {}
     queue = Queue(tc_config)
     task = queue.task(common_task_id)
     tc_task_items["version"] = task["extra"]["build_props"]["version"]
     tc_task_items["build_number"] = task["extra"]["build_props"]["build_number"]
     tc_task_items["mozilla_revision"] = task["extra"]["build_props"]["revision"]
     tc_task_items["partials"] = task["extra"]["build_props"]["partials"]
     tc_task_items["mozharness_changeset"] = task["extra"]["build_props"]["mozharness_changeset"]
+    tc_task_items["release_eta"] = task["extra"]["build_props"].get("release_eta")
     return tc_task_items
 
 
 def get_unique_release_items(options, tc_config):
     unique_items = {}
 
     if options.common_task_id:
         # sometimes, we make a release based on a previous release. e.g. a graph that represents
--- a/lib/python/kickoff/__init__.py
+++ b/lib/python/kickoff/__init__.py
@@ -250,17 +250,18 @@ def make_task_graph_strict_kwargs(appVer
                                   postrelease_bouncer_aliases_enabled, uptake_monitoring_enabled,
                                   postrelease_version_bump_enabled, moz_disable_mar_cert_verification,
                                   postrelease_mark_as_shipped_enabled, accepted_mar_channel_id, public_key,
                                   product, stage_product, funsize_product, push_to_candidates_enabled,
                                   push_to_releases_automatic, push_to_releases_enabled, release_channels,
                                   repo_path, revision, signing_class, signing_pvt_key, source_enabled,
                                   tuxedo_server_url, update_verify_enabled, updates_builder_enabled,
                                   updates_enabled, verifyConfigs, version, publish_to_balrog_channels,
-                                  snap_enabled, update_verify_channel, update_verify_requires_cdn_push):
+                                  snap_enabled, update_verify_channel, update_verify_requires_cdn_push,
+                                  release_eta):
     """simple wrapper that sanitizes whatever calls make_task_graph uses universally known kwargs"""
 
     kwargs = dict(
         appVersion=appVersion,
         balrog_api_root=balrog_api_root,
         balrog_password=balrog_password,
         balrog_username=balrog_username,
         beetmover_aws_access_key_id=beetmover_aws_access_key_id,
@@ -311,16 +312,17 @@ def make_task_graph_strict_kwargs(appVer
         updates_enabled=updates_enabled,
         verifyConfigs=verifyConfigs,
         version=version,
         publish_to_balrog_channels=publish_to_balrog_channels,
         snap_enabled=snap_enabled,
         update_verify_channel=update_verify_channel,
         update_verify_requires_cdn_push=update_verify_requires_cdn_push,
         funsize_product=funsize_product,
+        release_eta=release_eta,
     )
     if extra_balrog_submitter_params:
         kwargs["extra_balrog_submitter_params"] = extra_balrog_submitter_params
 
     # don't import releasetasks until required within function impl to avoid global failures
     # during nosetests
     from releasetasks import make_task_graph
     return make_task_graph(**kwargs)