logging: log the original error when a merge failure occurs

This commit is contained in:
Daniel Dourvaris 2016-05-31 16:08:21 +03:00
parent c683b5b179
commit dbb993b0d4
2 changed files with 14 additions and 6 deletions

View file

@ -853,7 +853,8 @@ class GitRepository(BaseRepository):
shadow_repo._checkout(pr_branch, create=True)
try:
shadow_repo._local_fetch(source_repo.path, source_ref.name)
except RepositoryError:
except RepositoryError as e:
log.exception('Failure when doing local fetch on git shadow repo')
return MergeResponse(
False, False, None, MergeFailureReason.MISSING_COMMIT)
@ -863,7 +864,8 @@ class GitRepository(BaseRepository):
shadow_repo._local_merge(merge_message, merger_name, merger_email,
[source_ref.commit_id])
merge_possible = True
except RepositoryError:
except RepositoryError as e:
log.exception('Failure when doing local merge on git shadow repo')
merge_possible = False
merge_failure_reason = MergeFailureReason.MERGE_FAILED
@ -877,7 +879,9 @@ class GitRepository(BaseRepository):
# cannot retrieve the merge commit.
shadow_repo = GitRepository(shadow_repository_path)
merge_commit_id = shadow_repo.branches[pr_branch]
except RepositoryError:
except RepositoryError as e:
log.exception(
'Failure when doing local push on git shadow repo')
merge_succeeded = False
merge_failure_reason = MergeFailureReason.PUSH_FAILED
else:

View file

@ -669,7 +669,8 @@ class MercurialRepository(BaseRepository):
try:
source_repo._validate_pull_reference(source_ref)
shadow_repo._local_pull(source_repo.path, source_ref)
except CommitDoesNotExistError:
except CommitDoesNotExistError as e:
log.exception('Failure when doing local pull on hg shadow repo')
return MergeResponse(
False, False, None, MergeFailureReason.MISSING_COMMIT)
@ -681,7 +682,8 @@ class MercurialRepository(BaseRepository):
target_ref, merge_message, merger_name, merger_email,
source_ref)
merge_possible = True
except RepositoryError:
except RepositoryError as e:
log.exception('Failure when doing local merge on hg shadow repo')
merge_possible = False
merge_failure_reason = MergeFailureReason.MERGE_FAILED
@ -705,7 +707,9 @@ class MercurialRepository(BaseRepository):
merge_commit_id, self.path, push_branches=True,
enable_hooks=True)
merge_succeeded = True
except RepositoryError:
except RepositoryError as e:
log.exception(
'Failure when doing local push on hg shadow repo')
merge_succeeded = False
merge_failure_reason = MergeFailureReason.PUSH_FAILED
else: