Bug 1354625 - Use mozilla-unified for upstream for all Firefox builds; r=aki
authorGregory Szorc <gps@mozilla.com>
Fri, 07 Apr 2017 11:08:11 -0700
changeset 351909 508dca13e963416b7b25be0e08949753f0e9b598
parent 351908 c92bc314c18b70695a7f6eb48cef489f564ae5b5
child 351910 5ff9620560fc250a68afa34595e52e8e16f15e28
push id31623
push userarchaeopteryx@coole-files.de
push dateSat, 08 Apr 2017 20:46:02 +0000
treeherdermozilla-central@21c4aca1ae60 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersaki
bugs1354625
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 1354625 - Use mozilla-unified for upstream for all Firefox builds; r=aki Without the use of an upstream the first repo cloned on a machine will be cached. If a subsequent job references a different repo, it may have to pull thousands of changesets because those changesets aren't part of the initially-cloned repo. This is why the --upstream feature to robustclone exists and is why it uses the mozilla-unified repo. The mozilla-unified repo is a superset of central, aurora, beta, release, etc. So by cloning it, you get changesets for all of the repos at the time of the clone. When a subsequent job comes along and requests a changeset from a different repo, you likely only need to fetch data for a handful of changesets, not thousands. This change adds the upstream url config for all fx_desktop_build jobs, ensuring it is used. A redundant config entry for the try repo has been removed as well. MozReview-Commit-ID: 3EL7aSXS4AG
testing/mozharness/configs/builds/branch_specifics.py
testing/mozharness/scripts/fx_desktop_build.py
--- a/testing/mozharness/configs/builds/branch_specifics.py
+++ b/testing/mozharness/configs/builds/branch_specifics.py
@@ -189,19 +189,16 @@ config = {
         'update_channel': 'aurora',
         'branch_uses_per_checkin_strategy': True,
         'stage_server': 'upload.ffxbld.productdelivery.prod.mozaws.net',
     },
     'try': {
         'repo_path': 'try',
         'clone_by_revision': True,
         'clone_with_purge': True,
-        # FUTURE this should be a unified repo because Try pushes may e.g.
-        # be on Aurora or Beta revisions.
-        'clone_upstream_url': 'https://hg.mozilla.org/mozilla-central',
         'tinderbox_build_dir': '%(who)s-%(got_revision)s',
         'to_tinderbox_dated': False,
         'include_post_upload_builddir': True,
         'release_to_try_builds': True,
         'stage_server': 'upload.trybld.productdelivery.prod.mozaws.net',
         'stage_username': 'trybld',
         'stage_ssh_key': 'trybld_dsa',
         'branch_supports_uploadsymbols': False,
--- a/testing/mozharness/scripts/fx_desktop_build.py
+++ b/testing/mozharness/scripts/fx_desktop_build.py
@@ -58,16 +58,19 @@ class FxDesktopBuild(BuildScript, TryToo
                 "pgo_platforms": ['linux', 'linux64', 'win32', 'win64'],
                 # nightly stuff
                 "nightly_build": False,
                 'balrog_credentials_file': 'oauth.txt',
                 'taskcluster_credentials_file': 'oauth.txt',
                 'periodic_clobber': 168,
                 # hg tool stuff
                 "tools_repo": "https://hg.mozilla.org/build/tools",
+                # Seed all clones with mozilla-unified. This ensures subsequent
+                # jobs have a minimal `hg pull`.
+                "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified",
                 "repo_base": "https://hg.mozilla.org",
                 'tooltool_url': 'https://api.pub.build.mozilla.org/tooltool/',
                 "graph_selector": "/server/collect.cgi",
                 # only used for make uploadsymbols
                 'old_packages': [
                     "%(objdir)s/dist/firefox-*",
                     "%(objdir)s/dist/fennec*",
                     "%(objdir)s/dist/seamonkey*",