Files
town/scripts/volume-backup.sh
2026-07-25 21:36:41 +01:00

38 lines
818 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
WORKING_DIR="/home/admin/atom.town" # todo: better
LOG_FILE="/var/log/volume-backup.log"
function log() {
echo "[$(date -Iseconds)] $*" | tee -a "$LOG_FILE"
}
MODE="${1:-}"
if [[ "$MODE" != "cold" && "$MODE" != "hot" ]]; then
log "usage: $0 [cold|hot]" >&2
exit 1
fi
function cleanup() {
if [[ "$MODE" == "cold" ]]; then
log "starting docker services"
docker compose start || true
fi
log "└───── backup finished ─────┘"
}
trap cleanup EXIT
log "┌────── backup started ─────┐"
log "mode: $MODE"
cd "$WORKING_DIR"
if [[ "$MODE" == "cold" ]]; then
log "stopping docker services"
docker compose stop
fi
log "running backup"
/usr/local/bin/vykar backup 2>&1 | tee -a "$LOG_FILE"