feature Dokumentation Git GitHub

This commit is contained in:
2025-10-15 14:05:03 +02:00
parent c5791a3d8b
commit 75d2537476
+25 -22
View File
@@ -4,40 +4,43 @@ status: active
timeframe: 2025-10-15 → 2025-10-29
last_reviewed: 2025-10-15
review_cycle: 7d
summary: MinimalDoku + NowPage etablieren, um Übersicht zurückzugewinnen.
summary: Git-Strategie (Trunk-based) + GitHub Actions CI/CD etablieren; Branchschutz, Releases per Tags; optional Images & Deploy zu Proxmox.
---
# Aktuelle Initiative: Doku verschlanken & NowPage einführen
# Aktuelle Initiative: Git-Flow & GitHub Actions Strategy
## 1) Vision (Was?)
Eine verlässliche, minimale Doku (≤5 Seiten) + ein stets aktueller OnePager für das laufende Vorhaben.
- In Scope: Start/Overview/API/Prod-HowTo/Now-Page
- Out of Scope: Vollständige Übersetzungen, alte Berichte/Prosa
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?)
Zu viele, verstreute Dokumente erzeugen Drift und Entscheidungsunsicherheit. Ziel: Orientierung in <2 Min. wiederfinden.
- Erfolg messbar an: 1 Einstiegspunkt, 0 Broken Links, Validierung grün
- Dauerhaft relevante Entscheidungen künftig als ADR, aus NowPage verlinkt
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?)
- Behalten: `docs/index.md`, `overview/system-overview.md`, `how-to/*`, `api/README.md`, `now/current.md`
- Entfernen/Archivieren: `Tagebuch/`, alte Indizes
- CI beibehalten (LinkCheck optional), später StaleCheck für NowPage ergänzen
- 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?)
- [ ] Index minimalisieren und nur auf Kernseiten verlinken
- [ ] System Overview anlegen und Ports/Health bündeln
- [ ] NowPage Template + current.md erstellen
- [ ] Alte Indizes und Tagebuch entfernen
- [ ] Validierung laufen lassen und etwaige Links reparieren
- [ ] Nächste Initiative vorbereiten: GitFlow & GitHub Actions Strategy
- [ ] 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: Validierung ausführen und offene LinkThemen bereinigen; danach GitFlow/GitHubActions planen
- Nächster Fokus (heute): Branch umbenennen → PR; Branchschutz setzen; CI-Workflow auf `main` fokussieren
## 6) Referenzen
- Start lokal: `docs/how-to/start-local.md`
- Übersicht: `docs/overview/system-overview.md`
- Produktion/Nginx: `docs/how-to/deploy-proxmox-nginx.md`
- API: `docs/api/README.md`
- 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`