Skip to content

Commit 32858c3

Browse files
Fix backup numbering when .tar.gz files are decompressed to .tar (#404)
* Fix backup numbering when .tar.gz files are decompressed to .tar * pre-commit auto-fixes * simplify backup() numbering logic --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent 65fac43 commit 32858c3

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

src/custodian/utils.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,17 @@ def backup(filenames, prefix="error", directory="./") -> None:
2020
series of error.1.tar.gz, error.2.tar.gz, ... will be generated.
2121
directory (str): directory where the files exist
2222
"""
23-
num = max([0] + [int(file.split(".")[-3]) for file in glob(os.path.join(directory, f"{prefix}.*.tar.gz"))])
23+
backup_files = glob(os.path.join(directory, f"{prefix}.*.tar*"))
24+
nums = [0]
25+
for file in backup_files:
26+
try:
27+
if file.endswith(".tar.gz"):
28+
nums.append(int(file.split(".")[-3]))
29+
elif file.endswith(".tar"):
30+
nums.append(int(file.split(".")[-2]))
31+
except (ValueError, IndexError):
32+
continue
33+
num = max(nums)
2434
prefix = f"{prefix}.{num + 1}"
2535
filename = os.path.join(directory, f"{prefix}.tar.gz")
2636
logging.info(f"Backing up run to {filename}")

0 commit comments

Comments
 (0)