ci: Deploy-Workflow auf Hugo/Docker korrigiert (war Node-Template); LFS im Checkout
Build & Deploy Website / deploy (push) Failing after 5m14s

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
maik
2026-08-18 17:06:47 +02:00
co-authored by Claude Opus 4.8
parent 9ce855314f
commit 15e23700ac
+19 -16
View File
@@ -1,7 +1,7 @@
name: Deploy name: Build & Deploy Website
# Baut die Seite und startet den nginx-Container (Port 8066) bei jedem Push auf main neu. # Hugo-Projekt (kein Node!). Baut das Image via Dockerfile (Hugo-Build im Container)
# Nutzt das vorhandene Dockerfile (Hugo-Build im Container) + docker-compose.yml. # und startet den nginx-Container (Port 8066) neu. Runner + nginx laufen auf 10.161.30.38.
on: on:
push: push:
@@ -9,37 +9,40 @@ on:
workflow_dispatch: {} workflow_dispatch: {}
concurrency: concurrency:
group: deploy-${{ github.ref }} group: deploy-main
cancel-in-progress: true cancel-in-progress: true
jobs: jobs:
deploy: deploy:
# Der Runner MUSS Zugriff auf Docker haben und auf dem Host laufen, der die # WICHTIG: Muss zu einem Label deines Gitea-Runners passen (Gitea → Admin/Repo → Runners).
# Seite ausliefert (bzw. Zugriff auf dessen Docker-Socket haben). # Der Runner braucht Zugriff auf Docker (Host-Runner ODER Container-Runner mit
# Ggf. das Label an deinen Gitea-Act-Runner anpassen (z. B. self-hosted). # gemountetem /var/run/docker.sock). Ohne Docker-Zugriff schlägt der Deploy fehl.
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout inkl. Git LFS - name: Checkout inkl. Git LFS
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
lfs: true # ZWINGEND: sonst kommen LFS-Pointer statt Bilder/Fonts an lfs: true # ZWINGEND sonst kommen LFS-Pointer statt Bilder/Fonts an
fetch-depth: 1 fetch-depth: 1
- name: LFS-Dateien sicherstellen - name: LFS-Dateien holen
run: git lfs pull run: git lfs pull
- name: Container bauen & neu starten - name: Container bauen & neu starten
run: | run: docker compose up -d --build --remove-orphans
docker compose up -d --build --remove-orphans
docker image prune -f
- name: Healthcheck - name: Alte Images aufräumen
run: docker image prune -f
- name: Healthcheck (:8066)
run: | run: |
for i in $(seq 1 15); do for i in $(seq 1 20); do
if wget -qO- http://localhost:8066/ >/dev/null 2>&1; then if wget -qO- http://localhost:8066/ >/dev/null 2>&1; then
echo "OK: Seite antwortet auf :8066"; exit 0 echo "OK: Seite antwortet auf :8066"; exit 0
fi fi
echo "warte auf Container … ($i)"; sleep 2 echo "warte auf Container … ($i/20)"; sleep 3
done done
echo "FEHLER: Seite antwortet nicht auf :8066"; exit 1 echo "FEHLER: Seite antwortet nicht auf :8066"
docker compose logs --tail=50 || true
exit 1