12 lines
484 B
Django/Jinja
12 lines
484 B
Django/Jinja
#!/usr/bin/env bash
|
|
|
|
data_dir='{{ item.path }}'
|
|
snapshot_dir="${data_dir}.snapshot"
|
|
|
|
# Read-only snapshot for atomic backup
|
|
otel-cli exec --name "btrfs subvolume snapshot" -- btrfs subvolume snapshot -r "$data_dir" "$snapshot_dir" || exit $?
|
|
|
|
otel-cli exec --name "restic backup directory" -- /usr/local/bin/restic backup "$snapshot_dir"
|
|
|
|
# Always remove snapshot subvolume, even if restic fails
|
|
otel-cli exec --name "btrfs subvolume delete" -- btrfs subvolume delete "$snapshot_dir"
|