Closed Bug 1286800 Opened 8 years ago Closed 8 years ago

mercurial-setup fetches hgwatchman before updating bitbucket fingerprints, then fails to do anything else and throws horrible error because fingerprint is out of date

Categories

(Developer Services :: Mercurial: configwizard, defect)

Production
x86_64
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: ruga, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/601.6.17 (KHTML, like Gecko) Version/9.1.1 Safari/601.6.17 Steps to reproduce: ./mach mercurial-setup Actual results: ================================================================================ Ensuring version-control-tools is up to date... pulling from https://hg.mozilla.org/hgcustom/version-control-tools searching for changes no changes found 0 files updated, 0 files merged, 0 files removed, 0 files unresolved ================================================================================ ================================================================================ Ensuring hgwatchman is up to date... abort: certificate for bitbucket.org has unexpected fingerprint 3f:d3:c5:17:23:3c:cd:f5:2d:17:76:06:93:7e:ee:97:42:21:14:aa (check hostfingerprint configuration) ================================================================================ Error running mach: ['mercurial-setup'] The error occurred in code that was called by the mach command. This is either a bug in the called code itself or in the way that mach is calling it. You should consider filing a bug for this issue. If filing a bug, please include the full output of mach, including this error message. The details of the failure are as follows: CalledProcessError: Command '[u'/usr/local/bin/hg', u'--config', u'hostfingerprints.bitbucket.org=46:de:34:e7:9b:18:cd:7f:ae:fd:8b:e3:bc:f4:1a:5e:38:d7:ac:24', u'--config', u'hostfingerprints.bugzilla.mozilla.org=7c:7a:c4:6c:91:3b:6b:89:cf:f2:8c:13:b8:02:c4:25:bd:1e:25:17', u'--config', u'hostfingerprints.hg.mozilla.org=af:27:b9:34:47:4e:e5:98:01:f6:83:2b:51:c9:aa:d8:df:fb:1a:27', u'clone', u'https://bitbucket.org/facebook/hgwatchman', u'/Users/serbr/.mozbuild/hgwatchman']' returned non-zero exit status 255 File "/opt/src/releases/mozilla-esr45/tools/mercurial/mach_commands.py", line 68, in mercurial_setup result = wizard.run(map(os.path.expanduser, config_paths)) File "/opt/src/releases/mozilla-esr45/tools/mercurial/hgsetup/wizard.py", line 333, in run self.updater.update_all() File "/opt/src/releases/mozilla-esr45/tools/mercurial/hgsetup/update.py", line 43, in update_all 'Ensuring hgwatchman is up to date...') File "/opt/src/releases/mozilla-esr45/tools/mercurial/hgsetup/update.py", line 53, in update_mercurial_repo update_mercurial_repo, hostfingerprints=HOST_FINGERPRINTS) File "/opt/src/releases/mozilla-esr45/tools/mercurial/hgsetup/update.py", line 59, in _update_repo fn(binary, url, dest, branch, *args, **kwargs) File "/opt/src/releases/mozilla-esr45/python/mozversioncontrol/mozversioncontrol/repoupdate.py", line 26, in update_mercurial_repo subprocess.check_call(args + ['clone', repo, path]) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 540, in check_call raise CalledProcessError(retcode, cmd)
Summary: mercurial-setup hgwatchman → mercurial-setup hgwatchman unexpected fingerprint
OS: Unspecified → Mac OS X
Hardware: Unspecified → x86_64
Group: firefox-core-security
https://dxr.mozilla.org/hgcustom_version-control-tools/source/hgext/configwizard/__init__.py#31 The fingerprint is current, but we're fetching from the repo before we update the .hgrc/mercurial.ini file, so now that still has the old one, and then we never get round to updating your hgrc and it keeps happening. Sounds like we should always update fingerprints (and nothing else) before trying to fetch things from external repos. Anyway, if you manually change the fingerprint this will be resolved. Alternatively, we should make sure that failing to fetch from bitbucket doesn't get you this gross error message and just (offers to) updates your hgrc so it doesn't happen next time. Either way, this doesn't need to be security-sensitive.
Group: firefox-core-security
Component: Untriaged → Build Config
Summary: mercurial-setup hgwatchman unexpected fingerprint → mercurial-setup fetches hgwatchman before updating bitbucket fingerprints, then fails to do anything else and throws horrible error because fingerprint is out of date
My .hgrc includes the manually updated hash.
The current version of mozilla-central doesn't attempt to do anything with the hgwatchman repo. This bug was fixed a few weeks ago.
Status: UNCONFIRMED → RESOLVED
Closed: 8 years ago
Component: Build Config → Mercurial: configwizard
Product: Firefox → Developer Services
Resolution: --- → WORKSFORME
Version: 45 Branch → unspecified
The branch "mozilla-central" is not relevant to the OP: the error occurs on mozilla-esr45, as evident from the log.
Status: RESOLVED → UNCONFIRMED
Resolution: WORKSFORME → ---
Version: unspecified → Production
The mozilla-esr45 release branch does not get minor bugs fixes for local developer tools because developers develop against mozilla-central. If you want `mach mercurial-setup` to work, run `hg pull https://hg.mozilla.org/mozilla-unified` + `hg up central` + `./mach mercurial-setup`.
Status: UNCONFIRMED → RESOLVED
Closed: 8 years ago8 years ago
Resolution: --- → WORKSFORME
OK
You need to log in before you can comment on or make changes to this bug.