63 lines
2.0 KiB
Bash
63 lines
2.0 KiB
Bash
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
SRC_ROOT="/Volumes/MacBook SD/Projekte/compliance-verification/app/flask-postgres"
|
|
DST_ROOT="/Volumes/docker/flask-postgres"
|
|
|
|
CONTAINER_NAME="flask_web"
|
|
|
|
echo "Starte Deployment für compliance-verification ..."
|
|
|
|
# Quellen prüfen
|
|
[ -d "$SRC_ROOT/app" ] || { echo "Quelle app fehlt: $SRC_ROOT/app"; exit 1; }
|
|
[ -d "$SRC_ROOT/images" ] || { echo "Quelle images fehlt: $SRC_ROOT/images"; exit 1; }
|
|
[ -d "$SRC_ROOT/styles" ] || { echo "Quelle styles fehlt: $SRC_ROOT/styles"; exit 1; }
|
|
|
|
# Ziele prüfen
|
|
[ -d "$DST_ROOT/app" ] || { echo "Ziel app fehlt: $DST_ROOT/app"; exit 1; }
|
|
[ -d "$DST_ROOT/images" ] || { echo "Ziel images fehlt: $DST_ROOT/images"; exit 1; }
|
|
[ -d "$DST_ROOT/styles" ] || { echo "Ziel styles fehlt: $DST_ROOT/styles"; exit 1; }
|
|
|
|
# Schutz: andere Projekte / DB dürfen nicht angefasst werden
|
|
[ -d "$DST_ROOT/app-unternehmen" ] && echo "Schutz aktiv: $DST_ROOT/app-unternehmen wird nicht angerührt."
|
|
[ -d "$DST_ROOT/unternehmen" ] && echo "Schutz aktiv: $DST_ROOT/unternehmen wird nicht angerührt."
|
|
[ -d "$DST_ROOT/db" ] && echo "Schutz aktiv: $DST_ROOT/db wird nicht angerührt."
|
|
|
|
echo "Synchronisiere app/ ..."
|
|
rsync -av --delete \
|
|
--exclude '.DS_Store' \
|
|
--exclude '._*' \
|
|
--exclude '__pycache__/' \
|
|
--exclude '*.pyc' \
|
|
--exclude 'images/' \
|
|
--exclude 'styles/' \
|
|
--exclude 'files/' \
|
|
--exclude 'Dockerfile.txt' \
|
|
--exclude 'app-unternehmen/' \
|
|
--exclude 'unternehmen/' \
|
|
--exclude 'db/' \
|
|
"$SRC_ROOT/app/" "$DST_ROOT/app/"
|
|
|
|
echo "Synchronisiere images/ ..."
|
|
rsync -av --delete \
|
|
--exclude '.DS_Store' \
|
|
--exclude '._*' \
|
|
--exclude 'videos/' \
|
|
"$SRC_ROOT/images/" "$DST_ROOT/images/"
|
|
|
|
echo "Synchronisiere styles/ ..."
|
|
rsync -av --delete \
|
|
--exclude '.DS_Store' \
|
|
--exclude '._*' \
|
|
"$SRC_ROOT/styles/" "$DST_ROOT/styles/"
|
|
|
|
echo "Diese Pfade werden bewusst NICHT angefasst:"
|
|
echo " - $DST_ROOT/files"
|
|
echo " - $DST_ROOT/app-unternehmen"
|
|
echo " - $DST_ROOT/unternehmen"
|
|
echo " - $DST_ROOT/db"
|
|
|
|
echo "Starte Container manuell neu ..."
|
|
# docker restart "${CONTAINER_NAME}"
|
|
|
|
echo "Deployment abgeschlossen." |