mitai-jinkendo/.claude/commands/deploy.md

86 lines
2.0 KiB
Markdown
Raw Permalink Normal View History

# Deploy – Commit, Test und Push
Führt Tests durch, bumpt die Version, committet und pusht auf develop.
Gitea startet dann automatisch den Dev-Deploy.
## Schritt 1: Syntax prüfen
```bash
python3 -m py_compile backend/main.py backend/routers/*.py 2>&1 && echo "Syntax OK"
```
## Schritt 2: Versions-Bump prüfen
Prüfe ob version.py und version.js aktualisiert wurden:
```bash
git diff --name-only | grep -E "version\.(py|js)"
```
Wenn NICHT aktualisiert → Stopp und fragen:
"Welche Version soll ich setzen? (aktuell: X.Y.Z)"
Dann version.py und version.js aktualisieren.
## Schritt 3: Smoke Tests auf Dev ausführen
```bash
npx playwright test 2>&1
```
Wenn Tests fehlschlagen:
- Screenshot analysieren: `start test-results\...\test-failed-1.png`
- Fehler korrigieren
- Tests erneut ausführen
- Erst wenn alle grün → weiter
## Schritt 4: Git Status prüfen
```bash
git status
git diff --stat
```
## Schritt 5: Commit
```bash
git add -A
git commit -m "COMMIT_MESSAGE
version: X.Y.Z
module: MODUL_NAME X.Y.Z"
```
## Schritt 6: Push auf develop
```bash
git push origin develop
```
## Schritt 7: Deploy-Status prüfen
```bash
# 30 Sekunden warten
# Dann Dev-System prüfen
ssh pi "docker logs dev-mitai-api --tail 10"
curl -sf https://dev.mitai.jinkendo.de/api/version | python3 -c "import sys,json; d=json.load(sys.stdin); print('Version:', d.get('app_version'))"
```
## Schritt 8: Gitea PR Link ausgeben
```bash
echo "PR erstellen: http://192.168.2.144:3000/Lars/mitai-jinkendo/compare/main...develop"
```
---
## Checkliste vor jedem Commit
```
[ ] backend/version.py aktualisiert (APP_VERSION + MODULE_VERSION)
[ ] frontend/src/version.js aktualisiert (APP_VERSION + PAGE_VERSION)
[ ] Changelog-Eintrag in version.py hinzugefügt
[ ] DB_SCHEMA_VERSION aktualisiert (wenn Schema geändert)
[ ] Alle Playwright Tests grün
[ ] Auth auf alle neuen Endpoints
[ ] api.js für alle neuen Frontend API-Calls
```
---
## Prod bleibt unberührt
Prod-Änderungen NUR über:
Gitea PR → Review → Merge → deploy-prod.yml
NIEMALS direkt auf Prod deployen.