© Excellent backgrounds/Shutterstock.com
Java Magazin
Pipeline as Code mit Jenkins 2

Der Praxischeck


Das Major-Release von Jenkins im April 2016 machte die Entwicklung von Delivery-Pipelines zur Kernfunktion. Pipelines lassen sich jetzt als Code implementieren, um die Automatisierung der Strecke vom Commit bis ins Produktionssystem besser zu unterstützen [1]. Anfang dieses Jahres sind weitere Neuerungen erschienen, die die Funktionalität ausbauen: eine deklarative Pipelinesyntax und eine moderne Oberfläche, das Blue Ocean UI. Wir beleuchten die neuen Möglichkeiten zur Pipelineentwicklung genauer und berichten, wie sie sich in der Praxis bewähren.

Als CI/CD-Werkzeug der ersten Generation hat Jenkins seit einiger Zeit Konkurrenz durch neuere Produkte wie Travis CI oder Circle CI erhalten. Diese neue Toolgeneration setzt auf Konzepte wie Convention over Configuration und Auto-Discovery, um den Konfigurationsaufwand für Integrations- und Delivery-Strecken zu verringern. Meist sehen diese Produkte eine Konfigurationsdatei vor, die im Sourcecode-Repository der Anwendung abgelegt wird und die Integrationspipeline steuert. Jenkins 2 greift einige dieser Konzepte auf, um sie mit seinen Stärken zu verbinden. Hierzu zählen Flexibilität, Erweiterbarkeit und vielfältige Integrationsmöglichkeiten durch die mehr als 1 000 Plug-ins [2].

Durch das Major-Update auf 2.0 wurde Pipeline as Code fester Bestandteil von Jenkins. Zuvor als Workflow-Plug-in bekannt, ist das Pipeline-Plug-in nun standardmäßig mit erweiterter Funktionalität im Jenkins enthalten. Gleichzeitig wurde mit der neuen Version die Philosophie verfolgt, das initiale Set-up zu vereinfachen, indem ein Paket von Standard-Plug-ins direkt bei der Installation dabei ist. Dadurch soll dem User ein Werkzeug an die Hand geben werden, das schon out of the Box viele gängige Anwendungsfälle abdeckt.

Jenkins ist als Open-Source-Produkt kostenlos erhältlich. CloudBees, die Hauptentwickler von Jenkins, bieten des Weiteren kostenpflichtig gehostete Jenkins-Instanzen sowie Enterprise-Support an. Das Projekt wird von CloudBees und einer großen Community stark vorangetrieben, sodass auch für die Zukunft eine aktive Weiterentwicklung zu erwarten ist. Jenkins wird in zwei Versionszweigen angeboten: eine Long-Term-Support-Version (LTS), die auf Stabilität ausgelegt ist, und einen Weekly Release, der die neuesten Funktionen enthält. Für den Betrieb eines produktiven Systems empfiehlt sich der LTS-Zweig. Dieser hängt dem Weekly Release vom Funktionsumfang nur unwesentlich hinterher und enthält alle wichtigen Hotfixes. Neben den k...

Java Magazin
Pipeline as Code mit Jenkins 2

Der Praxischeck

Das Major-Release von Jenkins im April 2016 machte die Entwicklung von Delivery-Pipelines zur Kernfunktion. Pipelines lassen sich jetzt als Code implementieren, um die Automatisierung der Strecke vom Commit bis ins Produktionssystem besser zu unterstützen [1]. Anfang dieses Jahres sind weitere Neuerungen erschienen, die die Funktionalität ausbauen: eine deklarative Pipelinesyntax und eine moderne Oberfläche, das Blue Ocean UI. Wir beleuchten die neuen Möglichkeiten zur Pipelineentwicklung genauer und berichten, wie sie sich in der Praxis bewähren.

Hendrik Brinkmann, Philip Stroh


Das Major-Release von Jenkins im April 2016 machte die Entwicklung von Delivery-Pipelines zur Kernfunktion. Pipelines lassen sich jetzt als Code implementieren, um die Automatisierung der Strecke vom Commit bis ins Produktionssystem besser zu unterstützen [1]. Anfang dieses Jahres sind weitere Neuerungen erschienen, die die Funktionalität ausbauen: eine deklarative Pipelinesyntax und eine moderne Oberfläche, das Blue Ocean UI. Wir beleuchten die neuen Möglichkeiten zur Pipelineentwicklung genauer und berichten, wie sie sich in der Praxis bewähren.

Als CI/CD-Werkzeug der ersten Generation hat Jenkins seit einiger Zeit Konkurrenz durch neuere Produkte wie Travis CI oder Circle CI erhalten. Diese neue Toolgeneration setzt auf Konzepte wie Convention over Configuration und Auto-Discovery, um den Konfigurationsaufwand für Integrations- und Delivery-Strecken zu verringern. Meist sehen diese Produkte eine Konfigurationsdatei vor, die im Sourcecode-Repository der Anwendung abgelegt wird und die Integrationspipeline steuert. Jenkins 2 greift einige dieser Konzepte auf, um sie mit seinen Stärken zu verbinden. Hierzu zählen Flexibilität, Erweiterbarkeit und vielfältige Integrationsmöglichkeiten durch die mehr als 1 000 Plug-ins [2].

Durch das Major-Update auf 2.0 wurde Pipeline as Code fester Bestandteil von Jenkins. Zuvor als Workflow-Plug-in bekannt, ist das Pipeline-Plug-in nun standardmäßig mit erweiterter Funktionalität im Jenkins enthalten. Gleichzeitig wurde mit der neuen Version die Philosophie verfolgt, das initiale Set-up zu vereinfachen, indem ein Paket von Standard-Plug-ins direkt bei der Installation dabei ist. Dadurch soll dem User ein Werkzeug an die Hand geben werden, das schon out of the Box viele gängige Anwendungsfälle abdeckt.

Jenkins ist als Open-Source-Produkt kostenlos erhältlich. CloudBees, die Hauptentwickler von Jenkins, bieten des Weiteren kostenpflichtig gehostete Jenkins-Instanzen sowie Enterprise-Support an. Das Projekt wird von CloudBees und einer großen Community stark vorangetrieben, sodass auch für die Zukunft eine aktive Weiterentwicklung zu erwarten ist. Jenkins wird in zwei Versionszweigen angeboten: eine Long-Term-Support-Version (LTS), die auf Stabilität ausgelegt ist, und einen Weekly Release, der die neuesten Funktionen enthält. Für den Betrieb eines produktiven Systems empfiehlt sich der LTS-Zweig. Dieser hängt dem Weekly Release vom Funktionsumfang nur unwesentlich hinterher und enthält alle wichtigen Hotfixes. Neben den k...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang