#!/usr/bin/env bash # Backup Proxmox-related configs (config/, .env) locally # Usage: ./scripts/backup-proxmox-configs.sh [--dry-run] set -euo pipefail DRY_RUN=false [[ "${1:-}" == "--dry-run" ]] && DRY_RUN=true SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" BACKUP_DIR="${BACKUP_DIR:-$PROJECT_ROOT/backups/configs}" TS=$(date +%Y%m%d_%H%M%S) BACKUP_PATH="$BACKUP_DIR/proxmox-configs-$TS" mkdir -p "$BACKUP_DIR" if $DRY_RUN; then echo "[DRY-RUN] Would create $BACKUP_PATH" echo "[DRY-RUN] Would backup: config/, .env, smom-dbis-138/.env" exit 0 fi mkdir -p "$BACKUP_PATH" [ -d "$PROJECT_ROOT/config" ] && cp -r "$PROJECT_ROOT/config" "$BACKUP_PATH/" [ -f "$PROJECT_ROOT/.env" ] && cp "$PROJECT_ROOT/.env" "$BACKUP_PATH/" [ -f "$PROJECT_ROOT/smom-dbis-138/.env" ] && cp "$PROJECT_ROOT/smom-dbis-138/.env" "$BACKUP_PATH/" 2>/dev/null || true echo "[OK] Config backup: $BACKUP_PATH" echo "For full Proxmox backup run on host: vzdump 1000 1001 --storage local-lvm --mode snapshot"