Overview
Für eine Schweizer Versicherungsgesellschaft haben wir die bestehende Jenkins-basierte CI/CD-Landschaft abgelöst und eine moderne, GitOps-basierte Plattform mit GitHub Actions eingeführt.
Ausgangslage
Veraltete CI/CD-Lösung
Jenkins als End-of-Life-Build- und Deployment-Server.
Groovy-Pipeline-Scripts
Hoher Aufwand bei Testing, Debugging und Weiterentwicklung.
Supportende
Auslaufender Support aus dem Plattform-Team.
Aufwändige Deployments
Viele manuelle Eingaben, fehlendes Vieraugenprinzip und fehleranfällige Abläufe.
Keine semantische Versionierung
Erschwerte Wiederverwendung von Shared Libraries.
Unser Beitrag
- Analyse der bestehenden CI/CD-Architektur und Abstimmung der Zielarchitektur.
- Konzeption und Implementierung wiederverwendbarer GitHub-Actions-Workflows.
- Integration von statischer Analyse, Linting und automatisierter Artefakt-Versionierung.
- Migration der OpenShift-Templates.
- Einführung von GitOps, Configuration as Code und Deployment-PR-Reviews.
- Know-how-Transfer und Coaching des Dev-Teams.
- Dekommissionierung der Jenkins-basierten Lösung.
- Optimierung der CI-Pipeline auf kürzere Durchlaufzeiten.
Lösung
Wir haben die Jenkins-basierte Build- und Deployment-Strecke durch wiederverwendbare GitHub-Actions-Workflows und GitOps-Deployments mit Argo CD ersetzt. Repository-Konfiguration, Settings und Secrets werden als Code verwaltet, wodurch Builds, Reviews und Deployments nachvollziehbar an einem Ort zusammenkommen.
GitHub Actions
Wiederverwendbare, optimierte Workflows und Actions.
GitOps
Argo CD mit Kustomize als Templating-Engine.
Configuration as Code
Terraform fürs Management von Git-Repositories, Settings und Secrets.
Semantic Versioning
Automatisierte Artefakt-Versionierung.
Resultate
Reduktion Deployment-Fehler
GitOps, Vieraugenprinzip und deklarative Konfiguration erhöhen die Zuverlässigkeit und Nachvollziehbarkeit.
Schnellere Pipelines
Die durchschnittliche Durchlaufzeit der CI-Pipeline konnte um 30% reduziert werden.
Höhere Code-Qualität
Statische Analyse und Linting liefern frühes Feedback im Code-Review.
Reduktion Ressourcenverbrauch
Der Wegfall von Jenkins und unnötigen Pipeline-Runs senkt den Compute-Verbrauch.
Weniger Verwaltungsaufwand
Configuration as Code reduziert manuelle Arbeit und Konfigurationsfehler.
Verbesserte Developer Experience
Weniger Wartungsaufwand, weniger Wartezeit, nachvollziehbare Builds & Deployments und bessere Review-Prozesse. Alles an einem Ort.
Adoption im Unternehmen
Die Lösung wurde von weiteren Dev-Teams in der Organisation erfolgreich adoptiert.
Technologien
- GitHub Actions
- OpenShift
- Kustomize
- Argo CD
- Jenkins
- Groovy
- Microsoft Teams
- Terraform