Files
meldestelle/docs/now/current.md
T

47 lines
2.8 KiB
Markdown

---
owner: stefan
status: active
timeframe: 2025-10-15 → 2025-10-29
last_reviewed: 2025-10-15
review_cycle: 7d
summary: Git-Strategie (Trunk-based) + GitHub Actions CI/CD etablieren; Branchschutz, Releases per Tags; optional Images & Deploy zu Proxmox.
---
# Aktuelle Initiative: Git-Flow & GitHub Actions Strategy
## 1) Vision (Was?)
Ein schlanker, verlässlicher Dev-Flow: kurze Feature-Branches → PR → main, automatisierte CI, Releases per Tag; optional Build & Deploy.
- In Scope: Branchschutz `main`, CI aktualisieren, Release-Tags, (optional) Image-Build & Deploy-Workflow
- Out of Scope: Mehrstufige Environments/Canary, komplexe Monorepo-Pipelines
## 2) Why (Warum so?)
Weniger Overhead als GitFlow, klare Qualitätstore via CI, reproduzierbare Releases mit Tags. Ziel: schneller und sicherer liefern.
- Erfolg messbar an: CI grün auf PRs, geschützter `main`, erster Release-Tag `v0.1.0`, optional erfolgreicher Deploy-Run
## 3) How (Wie umsetzen?)
- Trunk-based: `main` geschützt; kurzlebige Branches `feature/*`, `fix/*`, `docs/*`, Squash-Merge only; PR-Titel nach Conventional Commits
- CI (CI.yml): Trigger auf PR/push zu `main`; Schritte: Gradle Build, Docs-Validation, optional Testreports-Artefakte; Concurrency aktiv
- Releases: zunächst manuell taggen (`vX.Y.Z`); später optional `release-please`
- Images: optional GHCR Build & Push bei Tags `v*` (Matrix für gateway, members, horses, events, masterdata, web)
- Deploy: optional via SSH zu Proxmox (`docker compose pull && up -d`); Secrets im Repo setzen
## 4) Plan (Was ist jetzt zu tun?)
- [ ] Branch umbenennen: `structur-umbau``feature/structur-umbau`; pushen und PR nach `main` eröffnen
- [ ] Branchschutz für `main` setzen: PR erforderlich, Required Checks (`CI`), „Squash & Merge only“, lineare History
- [ ] CI-Workflow anpassen: vorhandenes `.github/workflows/build.yml` auf PR/push nur `main`, Concurrency, Testreports-Upload
- [ ] (Optional) Deploy-Workflow anlegen: `.github/workflows/deploy.yml` (SSH); Secrets setzen: `PROD_SSH_HOST`, `PROD_SSH_USER`, `PROD_SSH_KEY`
- [ ] (Optional) Image-Build & Push bei Tags (`v*`) zu GHCR einführen
- [ ] (Optional) Release-Strategie entscheiden: manuelle Tags vs. `release-please`; ggf. Workflow hinzufügen
- [ ] Cloudflare/Nginx prüfen: DNS (Proxy ON), SSL/TLS „Full (strict)“, Origin-Zertifikat, HTTPS-Serverblöcke aktivieren
- [ ] Smoke-Tests: Health über Domains prüfen (`/actuator/health`, `/health`)
## 5) Status & Nächster Fokus
- Status: active
- Nächster Fokus (heute): Branch umbenennen → PR; Branchschutz setzen; CI-Workflow auf `main` fokussieren
## 6) Referenzen
- CI-Workflow aktuell: `.github/workflows/build.yml`
- Docs-Validator: `scripts/validation/validate-docs.sh`
- Nginx Beispiel: `docs/proxmox-nginx/meldestelle.conf`
- Überblick/Start: `docs/overview/system-overview.md`, `docs/how-to/start-local.md`