Renovate auto merge minor/patch
User Story
Als Entwickler*innen möchte ich, dass Renovate auf GitLab automatisch Minor- und Patch-Updates der Team Infrastruktur Abhängigkeiten merged, sofern die GitLab Pipeline erfolgreich durchläuft. Dies soll den Prozess der Aktualisierung von Abhängigkeiten vereinfachen und den manuellen Aufwand sowie den Noise reduzieren, ohne dabei die Stabilität des Projekts zu gefährden.
Eingeschränkt: OAuth-Serivce !!!
Why
Diese Anforderung soll die Effizienz des Entwicklungsprozesses steigern, indem Zeit und Aufwand für die manuelle Überprüfung und das Merging von nicht-breaking Updates reduziert werden. Indem nur Minor- und Patch-Änderungen automatisch gemerged werden, bleibt die Kontrolle über potenziell breaking Changes in den Händen der Entwickler, was das Risiko von unerwünschten Auswirkungen auf das Projekt minimiert. Das Ausblenden von DEV-Versionen (dev, alpha, beta, etc) aus den Update-Vorschlägen verhindert zudem, dass instabile Versionen versehentlich in die Codebasis einfließen.
Links, Notes, Remarks
https://docs.renovatebot.com/key-concepts/automerge/ https://docs.gitlab.com/ee/ci/
Übersicht alle betroffene Repos: https://wiki.fit-connect.fitko.dev/de/Teams/Infrastruktur/repos-overview
Acceptance criteria
-
Renovate Runner hat aktuelle Version (v17.165.0, see https://gitlab.com/renovate-bot/renovate-runner/-/tags) -
OPTIONAL: Renovate ist so konfiguriert, dass er seine Runner Version aktualisiert -
Renovate ist so konfiguriert, dass es automatisch Minor- und Patch-Updates merged, wenn die GitLab Pipeline grün ist. -
Breaking Changes werden von Renovate identifiziert und erfordern eine manuelle Überprüfung und Integration. -
Renovate ignoriert DEV-Versionen (dev, alpha, beta, etc) und schlägt diese nicht als Updates vor. -
Die Konfiguration von Renovate wurde dokumentiert und im Projekt-Repository hinterlegt. -
Oauth-Server ist von den Änderungen nur eingeschränkt betroffen.
Implementation plan (to be completed by the developer)
-
Überprüfung der aktuellen Renovate-Konfiguration und Identifikation notwendiger Änderungen. -
Anpassung der Renovate-Konfigurationsdatei, um automatische Merges für Minor- und Patch-Updates zu aktivieren, sofern die GitLab CI/CD Pipeline erfolgreich durchläuft. -
Einrichtung von Filterregeln in Renovate, um Breaking Changes für eine manuelle Überprüfung zu markieren und DEV-Versionen auszuschließen. -
Testen der neuen Renovate-Konfiguration durch Erstellen von Test-Branches mit verschiedenen Arten von Abhängigkeitsupdates. -
Dokumentation der neuen Renovate-Konfiguration und des Prozesses für das manuelle Merging von Breaking Changes. -
Ausnahme für OAuth-Server konfigurieren. -
Definition of Done was checked.