mirror of
https://github.com/kevinveenbirkenbach/docker-volume-backup.git
synced 2026-08-01 12:34:50 +00:00
refactor(restore)!: rsync volumes directly on the host, drop alpine-rsync
Restore now resolves the target volume's mountpoint via docker volume inspect and rsyncs into it directly, mirroring how the backup path already reads the mountpoint; the alpine-rsync container and the --rsync-image flag are gone. The e2e harness mounts /var/lib/docker read-write in the test container so the direct restore can write, the same way baudolo runs as root on a real host. BREAKING CHANGE: the restore 'files' subcommand no longer accepts --rsync-image; the caller must have write access to the docker volume root (root on the host), which is baudolo's normal privilege. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -38,10 +38,6 @@ def main(argv: list[str] | None = None) -> int:
|
||||
# ------------------------------------------------------------------
|
||||
p_files = sub.add_parser("files", help="Restore files into a docker volume")
|
||||
_add_common_backup_args(p_files)
|
||||
p_files.add_argument(
|
||||
"--rsync-image",
|
||||
default="ghcr.io/kevinveenbirkenbach/alpine-rsync",
|
||||
)
|
||||
p_files.add_argument(
|
||||
"--source-volume",
|
||||
default=None,
|
||||
@@ -95,7 +91,6 @@ def main(argv: list[str] | None = None) -> int:
|
||||
return restore_volume_files(
|
||||
args.volume_name,
|
||||
bp_files.files_dir(),
|
||||
rsync_image=args.rsync_image,
|
||||
)
|
||||
|
||||
if args.cmd == "postgres":
|
||||
|
||||
Reference in New Issue
Block a user