Files
Gartenvisualisierung/.gitea/workflows/deploy.yaml
T
2026-09-09 19:33:04 +02:00

41 lines
1.4 KiB
YAML

name: Deploy App
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Deploy to Server
run: |
APP_DIR="/opt/aicds/apps/${GITHUB_REPOSITORY#*/}"
mkdir -p $APP_DIR
cp -a . $APP_DIR/
cd $APP_DIR
docker compose down || true
docker compose up -d --build
docker image prune -f
# Einmaliger Schritt: Traefik nimmt neue Container nicht mehr auf.
# Nach dem Neustart liest es alle laufenden Container neu ein.
# Dieser Schritt wird danach wieder entfernt.
- name: Traefik neu einlesen
run: |
echo "--- vorher ---"
docker ps --filter name=traefik --format '{{.Names}} {{.Status}}'
docker restart traefik
echo "--- nachher ---"
sleep 20
docker ps --filter name=traefik --format '{{.Names}} {{.Status}}'
echo "--- Router-Test von innen ---"
for i in 1 2 3 4 5 6; do
C=$(docker run --rm --network agent-net curlimages/curl:latest -sk -o /dev/null -w '%{http_code}' --max-time 10 -H 'Host: garten.aicds.ch' https://traefik/ 2>/dev/null || echo "-")
echo "Versuch $i: $C"
[ "$C" = "200" ] && break
sleep 15
done
echo "--- Traefik-Log, letzte 25 Zeilen ---"
docker logs --tail=25 traefik 2>&1 | tail -25 || true