#!/bin/bash
set -euo pipefail

SRC_ROOT="/Volumes/MacBook SD/Projekte/HebammeKrystyna"
DST_ROOT="/Volumes/docker/flask-postgres/app-hebammekrystyna"

NAS_USER="BKolb"
NAS_HOST="192.168.0.10"
CONTAINER_NAME="flask_hebammekrystyna"

echo "Starte Deployment..."

[ -d "$SRC_ROOT" ] || { echo "Quelle fehlt: $SRC_ROOT"; exit 1; }
[ -d "$DST_ROOT" ] || { echo "Ziel fehlt: $DST_ROOT"; exit 1; }

echo "Synchronisiere Projektdateien ..."
rsync -av --delete \
  --exclude '.DS_Store' \
  --exclude '._*' \
  --exclude '__pycache__/' \
  --exclude '*.pyc' \
  --exclude '*.pyo' \
  --exclude '*.log' \
  --exclude '.git/' \
  --exclude '.venv/' \
  --exclude 'venv/' \
  --exclude 'node_modules/' \
  --exclude 'files/' \
  --exclude 'images/' \
  --exclude 'styles/' \
  "$SRC_ROOT/" "$DST_ROOT/"

echo "Synchronisiere images/ ..."
if [ -d "$SRC_ROOT/images" ]; then
  mkdir -p "$DST_ROOT/images"
  rsync -av --delete \
    --exclude '.DS_Store' \
    --exclude '._*' \
    --exclude 'videos/' \
    "$SRC_ROOT/images/" "$DST_ROOT/images/"
else
  echo "Hinweis: $SRC_ROOT/images nicht gefunden, übersprungen."
fi

echo "Synchronisiere styles/ ..."
if [ -d "$SRC_ROOT/styles" ]; then
  mkdir -p "$DST_ROOT/styles"
  rsync -av --delete \
    --exclude '.DS_Store' \
    --exclude '._*' \
    "$SRC_ROOT/styles/" "$DST_ROOT/styles/"
else
  echo "Hinweis: $SRC_ROOT/styles nicht gefunden, übersprungen."
fi

echo "Synchronisiere templates/ ..."
if [ -d "$SRC_ROOT/templates" ]; then
  mkdir -p "$DST_ROOT/templates"
  rsync -av --delete \
    --exclude '.DS_Store' \
    --exclude '._*' \
    "$SRC_ROOT/templates/" "$DST_ROOT/templates/"
else
  echo "Hinweis: $SRC_ROOT/templates nicht gefunden, übersprungen."
fi

echo "files/ wird bewusst nicht angefasst."

echo "Container manuell neu starten oder neu bauen falls requirements/Dockerfile geändert wurden."
# ssh "${NAS_USER}@${NAS_HOST}" "/usr/bin/docker restart ${CONTAINER_NAME}"

echo "Deployment abgeschlossen."