aboutsummaryrefslogtreecommitdiff
path: root/gbp/scripts/common/buildpackage.py
diff options
context:
space:
mode:
Diffstat (limited to 'gbp/scripts/common/buildpackage.py')
-rw-r--r--gbp/scripts/common/buildpackage.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/gbp/scripts/common/buildpackage.py b/gbp/scripts/common/buildpackage.py
index 72489e5..8fd7102 100644
--- a/gbp/scripts/common/buildpackage.py
+++ b/gbp/scripts/common/buildpackage.py
@@ -87,8 +87,12 @@ def git_archive_submodules(repo, treeish, output, prefix, comp_type, comp_level,
if comp_type:
# Redirect through stdout directly to the correct output file in
# order to avoid determining the output filename of the compressor
- ret = os.system("%s --stdout -%s %s %s > %s" %
- (comp_type, comp_level, comp_opts, main_archive,
+ try:
+ comp_level_opt = '-%d' % comp_level if comp_level is not None else ''
+ except TypeError as e:
+ raise GbpError("Invalid compression level '%s'" % comp_level)
+ ret = os.system("%s --stdout %s %s %s > %s" %
+ (comp_type, comp_level_opt, comp_opts, main_archive,
output))
if ret:
raise GbpError("Error creating %s: %d" % (output, ret))
@@ -107,8 +111,12 @@ def git_archive_single(treeish, output, prefix, comp_type, comp_level, comp_opts
prefix = sanitize_prefix(prefix)
pipe = pipes.Template()
pipe.prepend("git archive --format=%s --prefix=%s %s" % (format, prefix, treeish), '.-')
+ try:
+ comp_level_opt = '-%d' % comp_level if comp_level is not None else ''
+ except TypeError as e:
+ raise GbpError("Invalid compression level '%s'" % comp_level)
if comp_type:
- pipe.append('%s -c -%s %s' % (comp_type, comp_level, comp_opts), '--')
+ pipe.append('%s -c %s %s' % (comp_type, comp_level_opt, comp_opts), '--')
ret = pipe.copy('', output)
if ret:
raise GbpError("Error creating %s: %d" % (output, ret))