Add local backup retention: keep-local toggle, download, delete-local
CI / Frontend build (push) Successful in 12s
CI / Script syntax (push) Successful in 3s
CI / Backend tests (push) Successful in 17s

Lets operators opt into keeping the local archive after upload (global
keep_local_backups setting), pull a remote archive back down into the
Proxmox dump directory for manual restore, and drop a locally-retained
copy without touching the remote object. Consolidates deletion so
retention, job-cascade delete, manual delete, and crash-recovery resume
all clean up local copies alongside remote ones.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Codex
2026-07-15 12:58:52 +02:00
parent 1288ba731d
commit 508decffe3
9 changed files with 404 additions and 35 deletions
+4
View File
@@ -193,6 +193,10 @@ def rclone_copyto(rclone_path: str, local_path: str, remote_object: str) -> None
run([rclone_path, "copyto", local_path, remote_object], timeout=None)
def rclone_download(rclone_path: str, remote_object: str, local_path: str) -> None:
run([rclone_path, "copyto", remote_object, local_path], timeout=None)
def rclone_object_exists(rclone_path: str, remote_object: str) -> bool:
try:
run([rclone_path, "lsjson", remote_object], timeout=120)