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