summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarius Makovsky <traveltissues@protonmail.com>2019-07-11 14:41:27 +0100
committerDarius Makovsky <traveltissues@protonmail.com>2019-07-11 15:29:13 +0100
commitf8c82be55dfc4ff4b2efe7191c123c0d71111ca6 (patch)
tree81c4713ea81eb1f2192a1014f76456c00012fe3c
parent9a5e29dbddc18f46221a28cae580eeef160e4055 (diff)
downloadbuildstream-traveltissues/becky/tar_compression.tar.gz
Handle None tars when inferring compressiontraveltissues/becky/tar_compression
-rw-r--r--src/buildstream/utils.py21
1 files changed, 10 insertions, 11 deletions
diff --git a/src/buildstream/utils.py b/src/buildstream/utils.py
index 780d43785..cfd253612 100644
--- a/src/buildstream/utils.py
+++ b/src/buildstream/utils.py
@@ -1365,16 +1365,15 @@ def _deterministic_umask():
def _get_compression(tar):
mapped_extensions = {'.tar': '', '.gz': 'gz', '.xz': 'xz', '.bz2': 'bz2'}
-# mapped_compressions = {value: key.lstrip(".") for key, value in mapped_extensions.items()}
- _, ext = os.path.splitext(tar)
-
- if ext:
- try:
- tar = mapped_extensions[ext]
- return tar
- except KeyError as e:
- raise UtilError("ERROR: invalid file extension ('{}') given with --tar".format(ext)) from e
+ try:
+ _, ext = os.path.splitext(tar)
+ if ext:
+ return mapped_extensions[ext]
+
+ except KeyError as e:
+ raise UtilError("ERROR: invalid file extension ('{}') given with --tar".format(ext)) from e
+ except (AttributeError, TypeError):
+ return mapped_extensions['.tar']
else:
- tar = mapped_extensions['.tar']
- return tar
+ return mapped_extensions['.tar']