Migration von Jenkins zu GitLab CI/CD

Veit Schiele

20. Januar 2021

3–4 Minuten

../_images/migration-from-jenkins-to-gitlab-ci-cd.png

Unsere Erfahrung ist, dass Migrationen oft sehr lange aufgeschoben werden, weil sie keinen unmittelbaren Vorteil versprechen. Wenn aber die eingesetzten Werkzeuge in die Jahre gekommen sind und nicht mehr wirklich zu den neuen Anforderungen passen, häufen sich technische Schulden an, die auch die weitere Entwicklung gefährden.

Vorteile

Die Vorteile von GitLab CI/CD gegenüber Jenkins sind:

Nahtlose Integration

GitLab bietet einen vollständigen DevOps-Workflow, der sich nahtlos in das GitLab-Ökosystem integriert.

Bessere Sichtbarkeit

Bessere Integration führt auch zu einer besseren Übersicht über die Pipelines und Projekte, so dass sich die Teams besser konzentrieren können.

Geringere Betriebskosten

Jenkins erfordert einen erheblichen Aufwand für die Wartung und Konfiguration. GitLab hingegen bietet Code-Überprüfung und CI/CD in einer einzigen Anwendung.

Erste Schritte

Die Umstellung von Jenkins auf GitLab muss jedoch nicht beängstigend sein. Viele Projekte wurden bereits von Jenkins auf GitLab CI/CD umgestellt, und es gibt eine ganze Reihe von Tools, die den Übergang erleichtern, wie z. B.:

  • Jenkins-Dateien in GitLab CI/CD ausführen

    Eine kurzfristige Lösung, die Teams bei der Migration von Jenkins zu GitLab CI/CD nutzen können, ist die Verwendung von Docker, um eine Jenkins-Datei in GitLab CI/CD auszuführen und dabei die Syntax schrittweise zu aktualisieren. Dadurch werden zwar die externen Abhängigkeiten nicht behoben, aber es wird bereits eine bessere Integration in das GitLab-Projekt erreicht.

  • Auto-DevOps verwenden

    Es ist möglich, Auto-DevOps zum Erstellen, Testen und Bereitstellen eurer Anwendungen zu verwenden, ohne dass eine spezielle Konfiguration erforderlich ist. Eine der aufwändigeren Aufgaben bei der Migration von Jenkins kann die Konvertierung von Pipelines von Groovy zu YAML sein; Auto-DevOps bietet jedoch vordefinierte CI/CD-Konfigurationen, die in vielen Fällen eine geeignete Standard-Pipeline erstellen. Auto-DevOps bietet weitere Funktionen wie Sicherheits-, Leistungs- und Codequalitätstests. Schließlich könnt ihr die Vorlagen leicht ändern, wenn ihr weitere Anpassungen benötigt.

Best Practices

Fangtn klein an!

Die oben erwähnten ersten Schritte ermöglichen es euch, schrittweise Änderungen vorzunehmen. Auf diese Weise könnt ihr bei eurem Migrationsprojekt kontinuierlich Fortschritte machen.

Nutzt die Tools effektiv!

Docker und Auto-DevOps stellen euch Tools zur Verfügung, die den Übergang vereinfachen.

Kommuniziert transparent und klar!

Haltet das Team über den Migrationsprozess auf dem Laufenden und teilt den Fortschritt des Projekts mit. Achtet auch auf eindeutige Jobnamen und gestaltet eure Konfiguration so, dass sie den bestmöglichen Überblick bietet. Schreibt bei Bedarf Kommentare für Variablen und schwer verständlichen Code.

Kontaktiert uns

Ich beantworte gerne eure Fragen und erstelle ein individuelles Angebot für die Migration eurer Jenkins-Pipeline auf GitLab CI/CD.

Portrait Veit Schiele

Veit Schiele

Mail

Phone