Adds the Architecture Decision Records that were written during the Forgejo deployment (M7.1) as part of moving docs from the iCloud folder into this versioned repository. Includes: - ADR-0001: Forgejo vs Gitea (non-profit stewardship) - ADR-0002: ai-apps placement (no separate VM) - ADR-0003: Native OIDC, not ForwardAuth - ADR-0004: Subdomain code.sdda.eu - ADR-0005: Volume mount on /data (lesson learned) - ADR-0006: Silent SSO via OAuth2 launch URL (lesson learned) Plus a docs/adr/README.md that explains the ADR format, lists the current ADRs, and provides a template for future entries. Refs OP#1118
2.2 KiB
2.2 KiB
ADR-0001: Forgejo statt Gitea
Status: Accepted Datum: 2026-04-11 Entscheider: Benjamin Weinlich Phase: M7.1 — Forgejo Deployment
Kontext
Wir brauchen ein selbst-gehostetes Git-Hosting für Code, Configs und Dokumentation. GitHub ist kommerziell und bei Microsoft; das passt nicht zum Souveränitäts-Prinzip unseres Stacks. Die naheliegende Open-Source-Alternative ist die Gitea-Familie.
Gitea war lange die populärste FOSS-Option. Im August 2022 wurde die Entwicklung von einer kommerziellen Firma (Gitea Ltd.) übernommen. Das hat die Community gespalten: Ein Teil der ursprünglichen Maintainer gründete Forgejo als Community-Fork, gesteuert vom non-profit Verein Codeberg e.V. (Berlin).
Entscheidung
Wir nutzen Forgejo (nicht Gitea).
Konsequenzen
Positiv
- Non-profit Stewardship: Codeberg e.V. ist ein eingetragener Verein ohne kommerzielle Interessen. Keine Gefahr von rug-pulls oder "free tier" Beschränkungen.
- Schnellere Security-Updates: Forgejo hat einen dedizierten Security-Track.
- API-kompatibel mit Gitea: Migration zwischen Gitea und Forgejo in beide Richtungen ist trivial. Keine Lock-in.
- Aktive Entwicklung: Forgejo hat ein festes Release-Rhythmus und transparente Roadmap.
- Passt zu unserem Prinzip: Open Source > proprietär, Souveränität > Bequemlichkeit.
Negativ / Trade-off
- Kleinere Community als Gitea (noch). Dritt-Dokumentation findet sich öfter für Gitea — aber da APIs identisch sind, ist das selten ein Blocker.
- Integrations (z.B. mit CI-Tools) sind oft als "Gitea" beworben aber funktionieren meist auch für Forgejo.
Alternativen
- Gitea: Verworfen wegen kommerzieller Stewardship-Sorgen.
- GitLab CE: Zu schwergewichtig (>4 GB RAM, lange Installation), würde ai-apps sprengen.
- Gogs: Vorgänger von Gitea, Entwicklung eingeschlafen. Keine Zukunft.
- SourceHut: Minimalistisch, aber ungewöhnliches UI, kleine Community.
- GitHub private: Verworfen wegen Souveränitäts-Prinzip.