#!/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"
