Das Jenkins-Projekt hat am 3. Februar 2017 Declarative Pipeline 1.0 vorgestellt. Die neue Schreibweise gibt Build-, Test- und Auslieferungsschritten eine feste Struktur im Jenkinsfile. Das Änderungsprotokoll datiert die erste Nicht-Beta-Fassung auf den 1. Februar. Es handelt sich um die Version der Pipeline-Erweiterung, nicht um eine neue Hauptversion des Jenkins-Servers.
Scripted Pipeline bleibt unterstützt
Die bisherige Groovy-basierte Variante heißt nun Scripted Pipeline und bleibt verfügbar. Beide Formen verwenden dieselbe Ausführungsumgebung; vorhandene Pipeline-Schritte und Shared Libraries können weiter genutzt werden. Jenkins 2.0 hatte Pipeline as Code bereits 2016 zum Schwerpunkt gemacht. Die deklarative Variante verändert also die Beschreibung des Ablaufs, nicht das Grundprinzip, ihn gemeinsam mit dem Anwendungscode zu versionieren.
Agenten, Stufen und Bedingungen ausdrücklich beschreiben
Die Syntaxdokumentation der Version 1.0 gliedert eine Pipeline unter anderem in agent, stages und steps. Eine Stufe kann mit when beispielsweise an einen Branch oder eine Umgebungsvariable gebunden werden. Für Code außerhalb der deklarativen Teilmenge steht innerhalb der Schritte ein script-Block bereit.
Zur Veröffentlichung gehören außerdem Syntaxprüfung per API und Kommandozeile sowie die Ausführung der gesamten Pipeline oder einzelner Stufen in Docker-Containern. Ein visueller Pipeline-Editor ist dagegen erst angekündigt. Seine Bearbeitungsoberfläche gehört noch nicht zur hier vorgestellten Freigabe.
Für Spiele- und Tool-Teams ist vor allem die prüfbare Ablaufbeschreibung relevant: Änderungen an Build- und Testschritten lassen sich zusammen mit dem Projekt begutachten. Die feste Struktur ersetzt dabei weder die benötigten Build-Werkzeuge noch Tests des tatsächlichen Ergebnisses.

