From 5fd49fcf08ec81002e71e47c7ebb830895ff86d3 Mon Sep 17 00:00:00 2001 From: Aki Sasaki Date: Thu, 3 May 2012 00:05:06 -0700 Subject: [PATCH] bug 749720 - mozharness multilocale will now die on missing tags. r=rail --- mozharness/base/errors.py | 1 + mozharness/base/vcs/mercurial.py | 11 +++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/mozharness/base/errors.py b/mozharness/base/errors.py index 8f2d6cce..0a5dd97b 100755 --- a/mozharness/base/errors.py +++ b/mozharness/base/errors.py @@ -56,6 +56,7 @@ class VCSException(Exception): HgErrorList = BaseErrorList + [ {'regex': re.compile(r'''^abort:'''), 'level': ERROR}, {'substr': r'''unknown exception encountered''', 'level': ERROR}, + {'substr': r'''failed to import extension''', 'level': WARNING}, ] PythonErrorList = BaseErrorList + [ diff --git a/mozharness/base/vcs/mercurial.py b/mozharness/base/vcs/mercurial.py index 370c629c..905819c7 100755 --- a/mozharness/base/vcs/mercurial.py +++ b/mozharness/base/vcs/mercurial.py @@ -17,7 +17,7 @@ sys.path.insert(1, os.path.dirname(os.path.dirname(os.path.dirname(sys.path[0])))) from mozharness.base.errors import HgErrorList, VCSException -from mozharness.base.log import LogMixin +from mozharness.base.log import LogMixin, FATAL from mozharness.base.script import ShellMixin, OSMixin HG_OPTIONS = ['--config', 'ui.merge=internal:merge'] @@ -123,7 +123,7 @@ def hg_ver(self): self.debug("Running hg version %s" % str(ver)) return ver - def update(self, dest, branch=None, revision=None): + def update(self, dest, branch=None, revision=None, error_level=FATAL): """Updates working copy `dest` to `branch` or `revision`. If revision is set, branch will be ignored. If neither is set then the working copy will be updated to the @@ -139,7 +139,9 @@ def update(self, dest, branch=None, revision=None): self.info("%s." % msg) if revision is not None: cmd = self.hg + ['update', '-C', '-r', revision] - self.run_command(cmd, cwd=dest, error_list=HgErrorList) + if self.run_command(cmd, cwd=dest, error_list=HgErrorList): + self.log("Unable to update %s to %s!" % (dest, revision), + level=error_level) else: # Check & switch branch local_branch = self.get_branch_from_path(dest) @@ -150,7 +152,8 @@ def update(self, dest, branch=None, revision=None): if branch and branch != local_branch: cmd.append(branch) - self.run_command(cmd, cwd=dest, error_list=HgErrorList) + if self.run_command(cmd, cwd=dest, error_list=HgErrorList): + self.log("Unable to update %s!" % dest, level=error_level) return self.get_revision_from_path(dest) def clone(self, repo, dest, branch=None, revision=None, update_dest=True):