summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2015-12-22 19:01:51 +0100
committerLars Wirzenius <liw@liw.fi>2015-12-22 19:01:51 +0100
commitd21877b0a0360ac70bdf74a60f1c91bb39183628 (patch)
treeccacdfff0e7bb431216e3cf590d15b9dfc3fe410
parent8ea5e34e5e90d3cdde0a7cec8448e80683c88a85 (diff)
downloadick-d21877b0a0360ac70bdf74a60f1c91bb39183628.tar.gz
Deal with -dbgsym and reprepro
-rw-r--r--icklib/project.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/icklib/project.py b/icklib/project.py
index 3e206c3..e68577c 100644
--- a/icklib/project.py
+++ b/icklib/project.py
@@ -960,11 +960,22 @@ class UploadDebianPackages(icklib.BuildStep):
cwd=incoming,
stderr=subprocess.STDOUT,
stdout_callback=line_logger.log_lines)
- cliapp.runcmd(
+
+ exit_code, stdout, stderr = cliapp.runcmd_unchecked(
['reprepro', 'processincoming', 'default'],
cwd=repopath,
stdout_callback=line_logger.log_lines,
stderr=subprocess.STDOUT)
+ if exit_code != 0:
+ pattern = r"Name '.*-dbgsym' of binary '.*' is not listed"
+ if re.search(pattern, stderr):
+ cliapp.runcmd(
+ ['reprepro', 'export'],
+ cwd=repopath,
+ stdout_callback=line_logger.log_lines,
+ stderr=subprocess.STDOUT)
+ else:
+ sys.exit(exit_code)
class LineLogger(object): # pragma: no cover