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