aboutsummaryrefslogtreecommitdiffhomepage
path: root/gbp/scripts/import_orig.py
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2017-11-07 15:02:38 +0100
committerGuido Günther <agx@sigxcpu.org>2017-11-07 15:05:22 +0100
commit62a94882daa5388afc2fc75e32e9d4008018e27f (patch)
treeebdc09ea7b588adc752ac01daf6e53c2624e935d /gbp/scripts/import_orig.py
parentfa06c7d49af77a707cdd267d9ec9bea298440561 (diff)
import-orig: move rollback into separate function
This keeps main smaller and expresses our intend. Gbp-Dch: Ignore
Diffstat (limited to 'gbp/scripts/import_orig.py')
-rw-r--r--gbp/scripts/import_orig.py24
1 files changed, 14 insertions, 10 deletions
diff --git a/gbp/scripts/import_orig.py b/gbp/scripts/import_orig.py
index 555a5878..5c95d7af 100644
--- a/gbp/scripts/import_orig.py
+++ b/gbp/scripts/import_orig.py
@@ -424,6 +424,19 @@ def set_bare_repo_options(options):
options.merge = False
+def rollback(repo, options):
+ if repo and repo.has_rollbacks() and options.rollback:
+ gbp.log.err("Error detected, Will roll back changes.")
+ try:
+ repo.rollback()
+ # Make sure the very last line as an error message
+ gbp.log.err("Rolled back changes after import error.")
+ except Exception as e:
+ gbp.log.err("%s" % e)
+ gbp.log.err("Clean up manually and please report a bug: %s" %
+ repo.rollback_errors)
+
+
def build_parser(name):
try:
parser = GbpOptionParserDebian(command=os.path.basename(name), prefix='',
@@ -631,16 +644,7 @@ def main(argv):
if str(err):
gbp.log.err(err)
ret = 1
- if repo and repo.has_rollbacks() and options.rollback:
- gbp.log.err("Error detected, Will roll back changes.")
- try:
- repo.rollback()
- # Make sure the very last line as an error message
- gbp.log.err("Rolled back changes after import error.")
- except Exception as e:
- gbp.log.err("%s" % e)
- gbp.log.err("Clean up manually and please report a bug: %s" %
- repo.rollback_errors)
+ rollback(repo, options)
if pristine_orig and linked and not options.symlink_orig:
os.unlink(pristine_orig)