Files
management/docs/adr/0001-gitlab-kanonisch-push-mirror.md
Thore CimbalandClaude Fable 5 70e81e2ff1 feat: slice 2 - all eleven decisions ported to docs/adr
Gate 4, slice 2: decisions/0001-0011 moved via git mv with schema
frontmatter prepended (status and date taken from each body's own
Status line - 0007 stays proposed, its decision is open in #20; bodies
unchanged except relative links gaining one directory level). The old
scheme's README and template retire - their rules already live in
AGENTS.md section 6 and the neckbeard ADR template. Every reference to
decisions/ across the tree retargeted (root files, not-yet-moved
verfahren/hosts/shared files, design doc and session ADR frontmatter).

Verified: validate 0 errors (11 ported + 2 session ADRs + duplicate-id
guard), gen_status --check current with all 13 ADRs listed, drift
check 0 findings, negative test shows a cloned id 0012 firing the
duplicate check.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-11 12:00:00 +00:00

41 lines
1.5 KiB
Markdown

---
type: adr
id: "0001"
status: accepted
date: 2026-07-31
supersedes: null
superseded_by: null
related: []
---
# 0001 — git.lab ist kanonisch, Gitea wird per Push-Mirror beliefert
**Status:** akzeptiert · **Datum:** 2026-07-31 (rückwirkend dokumentiert 2026-08-01) · **Entscheider:** sorb
## Kontext
Build-CI brauchte mehr Ressourcen als CFGMON hat (webpack ~4 GB Heap auf einem
3,7-GiB-Host) und Gitea Actions zeigte mehrere echte Bugs. Das Homelab-GitLab
(`git.lab`, nur im Lab/VPN auflösbar) hat die Kapazität; Produktion (Flux) darf
aber nicht von der Lab-Verfügbarkeit abhängen.
## Entscheidung
`git.lab/axion1337.chat/*` ist die kanonische Heimat aller Repos; Gitea/rohana
wird über Push-Mirrors beliefert und bleibt Flux-Source, Container-Registry,
npm-Registry und Release-Download. **Direkte Pushes zu Gitea sind für gespiegelte
Repos verboten** — der Mirror überschreibt divergenten Stand per Force.
## Konsequenzen
- Bei Lab-Ausfall läuft Prod weiter; nur neue Builds pausieren.
- Commits, die doch auf Gitea landen (z. B. Cluster-CronJobs ohne Lab-Route),
brauchen das Kanonisierungs-Verfahren (`verfahren/deploy-uebergabe.md`):
`.patch` ziehen, `git am`, Push über git.lab. Zweimal live gebraucht.
- Arbeiten an den Repos setzt Lab-Zugang voraus (vor Ort oder VPN).
## Verworfene Alternativen
- CFGMON-CI aufrüsten (Swap/Limits): strukturell zu klein, verworfen mit CFGMON-10.
- git.lab öffentlich exponieren: Angriffsfläche fürs Lab, stattdessen VPN (→ 0004).