Files
D4rkst3randClaude Fable 5 b5617a9d18
Deploy / check (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
Repo-Backups, Gitea-Theme und Auto-Deploy
- Repo-Backups: nachts um 04:00 werden alle Gitea-Repos als git-Bundle
  gesichert — eine Datei pro Repo mit kompletter Historie, aus der sich
  direkt wieder klonen lässt. 14 Tage Rotation wie beim DB-Backup,
  Schalter und "Repos jetzt sichern" im System-Tab. Nutzt den bereits
  vorhandenen Gitea-Token; Dockerfile installiert dafür git mit.
- Gitea-Theme im D4RKST3R-Look (docs/gitea-theme/): Neon-Gelb/Orange auf
  Schwarz, gebaut gegen die Variablen von Gitea 1.26, Diff-Farben bleiben
  lesbar. Einbau-Anleitung liegt daneben.
- Auto-Deploy statt manuellem "Pull and redeploy": Workflow für Gitea
  Actions (prüft Server-Syntax und Frontend-Build, bevor deployed wird)
  plus dokumentierter Runner-loser Weg über den Portainer-Webhook.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-31 14:01:31 +02:00

50 lines
1.3 KiB
YAML

# Auto-Deploy: prüft den Code und stößt danach das Redeploy in Portainer an.
# Braucht einen laufenden Act-Runner und das Repo-Secret PORTAINER_WEBHOOK
# (Portainer → Stack → Webhook-URL). Siehe docs/auto-deploy.md.
name: Deploy
on:
push:
branches: [main]
jobs:
check:
runs-on: ubuntu-latest
steps:
- name: Code holen
uses: actions/checkout@v4
- name: Node einrichten
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Abhängigkeiten installieren
run: npm ci
- name: Server-Code prüfen
run: |
for f in $(find src -name "*.js"); do
node --check "$f" || exit 1
done
- name: Frontend bauen
run: |
cd frontend
npm ci
npm run build
deploy:
needs: check
runs-on: ubuntu-latest
steps:
- name: Portainer-Redeploy auslösen
run: |
if [ -z "${{ secrets.PORTAINER_WEBHOOK }}" ]; then
echo "PORTAINER_WEBHOOK ist nicht gesetzt — übersprungen."
exit 0
fi
code=$(curl -s -o /dev/null -w "%{http_code}" -X POST "${{ secrets.PORTAINER_WEBHOOK }}")
echo "Portainer antwortete mit HTTP $code"
[ "$code" -lt 400 ] || exit 1