Files
Hugo_MAP-NSU-Komplex/.gitea/workflows/deploy.yml
T

46 lines
1.3 KiB
YAML

name: Deploy
# Baut die Seite und startet den nginx-Container (Port 8066) bei jedem Push auf main neu.
# Nutzt das vorhandene Dockerfile (Hugo-Build im Container) + docker-compose.yml.
on:
push:
branches: [main]
workflow_dispatch: {}
concurrency:
group: deploy-${{ github.ref }}
cancel-in-progress: true
jobs:
deploy:
# Der Runner MUSS Zugriff auf Docker haben und auf dem Host laufen, der die
# Seite ausliefert (bzw. Zugriff auf dessen Docker-Socket haben).
# Ggf. das Label an deinen Gitea-Act-Runner anpassen (z. B. self-hosted).
runs-on: ubuntu-latest
steps:
- name: Checkout inkl. Git LFS
uses: actions/checkout@v4
with:
lfs: true # ZWINGEND: sonst kommen LFS-Pointer statt Bilder/Fonts an
fetch-depth: 1
- name: LFS-Dateien sicherstellen
run: git lfs pull
- name: Container bauen & neu starten
run: |
docker compose up -d --build --remove-orphans
docker image prune -f
- name: Healthcheck
run: |
for i in $(seq 1 15); do
if wget -qO- http://localhost:8066/ >/dev/null 2>&1; then
echo "OK: Seite antwortet auf :8066"; exit 0
fi
echo "warte auf Container … ($i)"; sleep 2
done
echo "FEHLER: Seite antwortet nicht auf :8066"; exit 1