Am 18. Oktober 2026 wurde PR #39052 gemergt. Damit ist OIDC Workload Identity für Gitea Actions endlich upstream. Der erste PR dazu stammt bereits aus dem Jahr 2023.
Warum OIDC?
CI/CD-Jobs brauchen häufig Zugriff auf externe Dienste. Klassisch hinterlegt man dafür Tokens oder andere Zugangsdaten als Secrets. Die bleiben mitunter lange gültig und müssen verwaltet und rotiert werden.
Mit OpenID Connect (OIDC) können Workflows stattdessen kurzlebige, signierte Identitätstoken anfordern. Externe Dienste prüfen die enthaltenen Claims anhand ihrer eigenen Vertrauensrichtlinien und können daraufhin temporäre Zugangsdaten ausstellen. Langlebige Cloud-Credentials im CI-System werden damit für entsprechend konfigurierte Integrationen überflüssig.
In Gitea Actions wird der Zugriff über die Workflow-Berechtigungen freigegeben:
| |
Die Vorgeschichte
Der erste PR #25664 wurde im Juli 2023 eröffnet. Im März 2025 folgte #33945, im März 2026 dann #36988. Alle drei wurden ohne Merge geschlossen.
Im August 2026 habe ich den Stand aus #36988 aufgegriffen und in #39052 weiterentwickelt. Unter anderem habe ich die Prüfungen der effektiven Token-Berechtigungen und die Ermittlung der Workflow-Herkunft überarbeitet sowie die Tests ausgebaut.
Nach der manuellen Validierung habe ich die Implementierung direkt in meinen eigenen Gitea-Patch-Stack übernommen. OIDC lief damit bereits auf meiner Instanz, während der PR upstream noch offen war.
Endlich upstream
Die Maintainer haben den Code im Review weiterbearbeitet, unter anderem das Claim-Format stärker an GitHub angepasst und die interne Struktur verändert. Am 18. Oktober 2026 wurde der PR schließlich in main gemergt und dem Meilenstein Gitea 29.0.0 zugeordnet.
Nach über drei Jahren und mehreren Anläufen war das Ding endlich drin.
Sobald ich auf eine Version mit OIDC-Unterstützung aktualisiere, kann der entsprechende Patch aus meinem Stack verschwinden. Ein Patch weniger, den ich selbst pflegen muss.
Den vollständigen Verlauf gibt es in go-gitea/gitea#39052.
