diff --git a/.ci/deploy.sh b/.ci/deploy.sh new file mode 100755 index 000000000..14f1cd71d --- /dev/null +++ b/.ci/deploy.sh @@ -0,0 +1,38 @@ +#!/bin/bash +set -e + +echo "[CI] Starte Deploy-Prozess fΓΌr Volleyball CMS..." + +CI_ROOT=$(pwd) +echo "[CI] Arbeitsverzeichnis: $CI_ROOT" + +# Submodule laden +git submodule update --init --recursive + +echo "[CI] Pull Backend..." +cd backend +git pull origin main + +echo "[CI] Pull Frontend..." +cd ../ +git pull origin main + +echo "[CI] Kopiere alte Uploads..." +OLD_UPLOADS=~/backend/uploads +NEW_UPLOADS=./backend/uploads + +mkdir -p "$NEW_UPLOADS" +if [ -d "$OLD_UPLOADS" ]; then + cp -ru "$OLD_UPLOADS/"* "$NEW_UPLOADS"/ + echo "[CI] Uploads erfolgreich kopiert." +else + echo "[CI] ⚠️ Kein alter Upload-Ordner gefunden unter $OLD_UPLOADS" +fi + + +echo "[CI] Docker Compose Build & Restart..." +export COMPOSE_PROJECT_NAME=tg-cms +docker compose -f docker-compose.yml down +docker compose -f docker-compose.yml up --build -d + +echo "[CI] βœ… Deployment abgeschlossen!" diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 271cf1718..fd93eb535 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -7,7 +7,21 @@ on: jobs: deploy: - runs-on: self-hosted + runs-on: ubuntu-latest steps: - - name: Starte zentrales Deploy Script - run: bash ~/tg-cms/deploy.sh + - name: Checkout inklusive Submodules + uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Debug Arbeitsverzeichnis und Dateien + run: | + echo "πŸ“‚ Aktuelles Arbeitsverzeichnis:" + pwd + echo "πŸ“„ Inhalt des Verzeichnisses:" + ls -la + echo "πŸ“„ Suche docker-compose.yml:" + find . -name docker-compose.yml + + - name: Starte Deploy Script + run: bash .ci/deploy.sh diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 000000000..4f06aca44 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "backend"] + path = backend + url = https://gitea.marc-wieland.de/mrcwlnd/volleyball-dev-backend.git diff --git a/backend b/backend new file mode 160000 index 000000000..d9f517690 --- /dev/null +++ b/backend @@ -0,0 +1 @@ +Subproject commit d9f5176904b72a8d85f879f3d5a115742358fdf5 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 000000000..2c4052f42 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,43 @@ +services: + backend: + build: ./backend + ports: + - "3000:3000" + volumes: + - ./backend/uploads:/app/uploads + - ./backend/logs:/app/logs + networks: + - tg-net + restart: always + env_file: + - ./backend/.env + + db: + image: postgres:15 + restart: always + environment: + POSTGRES_USER: tgadmin + POSTGRES_PASSWORD: secretpass + POSTGRES_DB: tg-cms + volumes: + - db-data:/var/lib/postgresql/data + networks: + - tg-net + + frontend: + build: . + ports: + - "8080:80" + networks: + - tg-net + depends_on: + - backend + restart: always + + + +networks: + tg-net: + +volumes: + db-data: