summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2022-04-19 22:44:58 +0000
committerGerrit Code Review <review@openstack.org>2022-04-19 22:44:58 +0000
commit09f12be4034049a005ec203bc80460c501ad9353 (patch)
tree8db12eaafcfdad5796036e8b555ec18203a8a9ea
parentb3772c3240bc01650d775f8a6b2b9b9fd2efb136 (diff)
parent1cd1d3f4de712d47f5bef49c7030cacf8f28ff11 (diff)
downloadzuul-09f12be4034049a005ec203bc80460c501ad9353.tar.gz
Merge "Delete repo if unable to reset"
-rw-r--r--zuul/merger/merger.py19
1 files changed, 12 insertions, 7 deletions
diff --git a/zuul/merger/merger.py b/zuul/merger/merger.py
index 9ef5be265..3aaafc20f 100644
--- a/zuul/merger/merger.py
+++ b/zuul/merger/merger.py
@@ -401,13 +401,18 @@ class Repo(object):
log.debug("Resetting repository %s", self.local_path)
self.createRepoObject(zuul_event_id, build=build)
- if process_worker is None:
- self._reset(self.local_path, self.env, log)
- else:
- job = process_worker.submit(Repo._reset, self.local_path, self.env)
- messages = job.result()
- for message in messages:
- log.debug(message)
+ try:
+ if process_worker is None:
+ self._reset(self.local_path, self.env, log)
+ else:
+ job = process_worker.submit(
+ Repo._reset, self.local_path, self.env)
+ messages = job.result()
+ for message in messages:
+ log.debug(message)
+ except Exception:
+ shutil.rmtree(self.local_path)
+ raise
def getBranchHead(self, branch, zuul_event_id=None):
repo = self.createRepoObject(zuul_event_id)