bug 1247212: improve release automation publishing of releases - allow pushes to be scheduled instead of done directly. r=rail
authorBen Hearsum <bhearsum@mozilla.com>
Mon, 03 Apr 2017 10:23:40 -0400
changeset 350928 aaf1a83844cf6375f6312d84933125899a6a9875
parent 350927 cf4ce9f1b82975e4464584051c6f0859f9170d1c
child 350929 cc02f8a2839a45e2dce952ff09a9e5c955e6e9aa
push id88751
push userbhearsum@mozilla.com
push dateMon, 03 Apr 2017 14:23:59 +0000
treeherdermozilla-inbound@aaf1a83844cf [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersrail
bugs1247212
milestone55.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
bug 1247212: improve release automation publishing of releases - allow pushes to be scheduled instead of done directly. r=rail
testing/mozharness/scripts/release/publish_balrog.py
--- a/testing/mozharness/scripts/release/publish_balrog.py
+++ b/testing/mozharness/scripts/release/publish_balrog.py
@@ -48,17 +48,17 @@ class PublishBalrog(MercurialScript, Bui
         # taskcluster properties
         self.read_buildbot_config()
         if not self.buildbot_config:
             self.warning("Skipping buildbot properties overrides")
             return
         # TODO: version and appVersion should come from repo
         props = self.buildbot_config["properties"]
         for prop in ['product', 'version', 'build_number', 'channels',
-                     'balrog_api_root']:
+                     'balrog_api_root', 'schedule_at', 'background_rate']:
             if props.get(prop):
                 self.info("Overriding %s with %s" % (prop, props[prop]))
                 self.config[prop] = props.get(prop)
 
     def query_abs_dirs(self):
         if self.abs_dirs:
             return self.abs_dirs
         self.abs_dirs = super(PublishBalrog, self).query_abs_dirs()
@@ -102,14 +102,18 @@ class PublishBalrog(MercurialScript, Bui
             "--username", self.config["balrog_username"],
             "--version", self.config["version"],
             "--product", self.config["product"],
             "--build-number", str(self.config["build_number"]),
             "--verbose",
         ])
         for r in channel_config["publish_rules"]:
             cmd.extend(["--rules", r])
+        if self.config.get("schedule_at"):
+            cmd.extend(["--schedule-at", self.config["schedule_at"]])
+        if self.config.get("background_rate"):
+            cmd.extend(["--background-rate", str(self.config["background_rate"])])
 
         self.retry(lambda: self.run_command(cmd, halt_on_failure=True))
 
 # __main__ {{{1
 if __name__ == '__main__':
     PublishBalrog().run_and_exit()