Bug 1253871 - L10N repacks should use martools from en-US build, not from latest dir r=jlund a=release DONTBUILD
authorRail Aliiev <rail@mozilla.com>
Wed, 09 Mar 2016 20:58:05 -0500
changeset 323366 aaa3cdd45ed3a3b00da3fb4ed5024055d3d955c1
parent 323365 ff51ee15fa46de9a0ed027244f848c9a132628aa
child 323367 648da47fced65908c6534eb0cdfdf99414f748d7
push id5913
push userjlund@mozilla.com
push dateMon, 25 Apr 2016 16:57:49 +0000
treeherdermozilla-beta@dcaf0a6fa115 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjlund, release
bugs1253871
milestone47.0a2
Bug 1253871 - L10N repacks should use martools from en-US build, not from latest dir r=jlund a=release DONTBUILD MozReview-Commit-ID: AScWLP9nqwn
testing/mozharness/configs/single_locale/mozilla-beta.py
testing/mozharness/scripts/desktop_l10n.py
--- a/testing/mozharness/configs/single_locale/mozilla-beta.py
+++ b/testing/mozharness/configs/single_locale/mozilla-beta.py
@@ -3,20 +3,16 @@ config = {
     "branch": "mozilla-beta",
     "en_us_binary_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-beta/",
     "update_channel": "beta",
     "latest_mar_dir": '/pub/mozilla.org/firefox/nightly/latest-mozilla-beta-l10n',
 
     # l10n
     "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-beta",
 
-    # mar
-    # No nightly on beta, using aurora mar tools
-    "mar_tools_url": "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora/mar-tools/%(platform)s",
-
     # repositories
     "mozilla_dir": "mozilla-beta",
     "repos": [{
         "vcs": "hg",
         "repo": "https://hg.mozilla.org/build/tools",
         "revision": "default",
         "dest": "tools",
     }, {
--- a/testing/mozharness/scripts/desktop_l10n.py
+++ b/testing/mozharness/scripts/desktop_l10n.py
@@ -66,17 +66,17 @@ configuration_tokens = ('branch',
                         'ssh_key_dir',
                         'stage_product',
                         )
 # some other values such as "%(version)s", "%(buildid)s", ...
 # are defined at run time and they cannot be enforced in the _pre_config_lock
 # phase
 runtime_config_tokens = ('buildid', 'version', 'locale', 'from_buildid',
                          'abs_objdir', 'abs_merge_dir', 'version',
-                         'to_buildid', 'en_us_binary_url')
+                         'to_buildid', 'en_us_binary_url', 'mar_tools_url')
 
 
 # DesktopSingleLocale {{{1
 class DesktopSingleLocale(LocalesMixin, ReleaseMixin, MockMixin, BuildbotMixin,
                           VCSMixin, SigningMixin, PurgeMixin, BaseScript,
                           BalrogMixin, MarMixin, VirtualenvMixin, TransferMixin):
     """Manages desktop repacks"""
     config_options = [[
@@ -258,16 +258,26 @@ class DesktopSingleLocale(LocalesMixin, 
         unknown_tokens = set(tokens_left) - set(runtime_config_tokens)
         if unknown_tokens:
             msg = ['unknown tokens in configuration:']
             for t in unknown_tokens:
                 msg.append(t)
             self.fatal(' '.join(msg))
         self.info('configuration looks ok')
 
+        self.read_buildbot_config()
+        if not self.buildbot_config:
+            self.warning("Skipping buildbot properties overrides")
+            return
+        props = self.buildbot_config["properties"]
+        for prop in ['mar_tools_url']:
+            if props.get(prop):
+                self.info("Overriding %s with %s" % (prop, props[prop]))
+                self.config[prop] = props.get(prop)
+
     def _get_configuration_tokens(self, iterable):
         """gets a list of tokens in iterable"""
         regex = re.compile('%\(\w+\)s')
         results = []
         try:
             for element in iterable:
                 if isinstance(iterable, str):
                     # this is a string, look for tokens