Jenkins Pipeline-Tutorial: So erstellen JenkinsDatei (Beispiel)
โก Intelligente Zusammenfassung
Jenkins Pipeline verknรผpft Build-, Test- und Deployment-Jobs zu einer geordneten Sequenz, die als Code ausgefรผhrt wird. JenkinsEine neben dem Projekt gespeicherte Datei macht aus dieser Sequenz eine รผberprรผfbare, versionierte Definition der Auslieferung.
Was ist Jenkins Pipeline?
Jenkins Pipeline ist eine Kombination aus Plugins, die die Integration und Implementierung unterstรผtzt. kontinuierliche LieferpipelinesEs handelt sich um einen erweiterbaren Automatisierungsserver zur Erstellung einfacher und komplexer Bereitstellungspipelines als Code mithilfe der Pipeline-DSL. Eine Pipeline ist eine Gruppe von Ereignissen, die in einer Sequenz miteinander verknรผpft sind.
Was sind Continuous-Delivery-Pipelines? Wie es funktioniert?
Kurz und Jenkins In einer Pipeline besteht zwischen jedem Job und jedem Ereignis eine Abhรคngigkeit von mindestens einem oder mehreren anderen Ereignissen, wie das untenstehende Diagramm zeigt.

Das obige Bild stellt eine Continuous-Delivery-Pipeline dar. JenkinsEs besteht aus Zustรคnden namens Build, Deploy, Test und Release. Jeder Zustand hat seine eigenen Ereignisse, die nacheinander ausgefรผhrt werden.
Eine Continuous-Delivery-Pipeline bildet diesen Prozess automatisch ab und transportiert Software von der Versionskontrolle bis zur Verรถffentlichung durch eine wiederholbare Abfolge von Builds. testing und Bereitstellungsphasen.
Non-Profit JenkinsDatei?
Jenkins Pipelines kรถnnen in einer Textdatei definiert werden namens JenkinsDatei. Sie drรผckt die Pipeline als Code in einer domรคnenspezifischen Sprache (DSL) aus und enthรคlt jeden Schritt, der zum Ausfรผhren der Pipeline erforderlich ist.
Die Vorteile der Verwendung JenkinsDie Dateien sind:
- Eins JenkinsFile kann Pipelines fรผr jeden Branch erstellen und Pull Requests ausfรผhren.
- Sie kรถnnen Ihre Jenkins Code in der Pipeline
- Sie kรถnnen Ihre prรผfen Jenkins Pipeline
- Dies ist die einzige Quelle fรผr Ihre Pipeline und kann von mehreren Benutzern geรคndert werden.
Eine Pipeline kann definiert werden in der Jenkins Web-UI oder in einer JenkinsDie Datei wurde in die Quellcodeverwaltung eingecheckt. Eine minimale deklarative Datei hat eine feste Struktur โ einen Pipeline-Block, einen Agenten und Phasen, die jeweils eine Phase pro Phase enthalten.
pipeline { agent any stages { stage('Build') { steps { echo 'Building' } } stage('Test') { steps { echo 'Testing' } } stage('Deploy') { steps { echo 'Deploying' } } } }
Durch das Speichern im Stammverzeichnis des Repositorys wird die Pipeline mit dem Code versioniert.
Deklarative versus skriptbasierte Pipeline-Syntax
Es gibt zwei Arten von Jenkins Pipeline-Syntax, die zum Definieren Ihrer JenkinsDatei.
- Deklarativ
- Skripted
Deklarativ
Die deklarative Pipeline-Syntax ist der einfachere Weg. Sie folgt einer vordefinierten Hierarchie und steuert dennoch jeden Aspekt der Pipeline-Ausfรผhrung auf unkomplizierte Weise.
Skripted
Skripted Jenkins Die Pipeline lรคuft auf dem Jenkins Der Controller verwendet einen ressourcenschonenden Executor, der die Pipeline in atomare Befehle รผbersetzt. Die beiden Ansรคtze unterscheiden sich deutlich in ihrer Implementierung; wรคhlen Sie daher einen pro Pipeline. JenkinsDatei.
โ ๏ธ Hinweis: Jenkins nennt es jetzt fรผhren zu die Controller.
Warum verwenden Jenkins Pipeline?
Jenkins ist eine offene Continuous-Integration-Server das automatisiert SoftwareentwicklungsprozesseSie kรถnnen mehrere erstellen. Automatisierungsjobs Nehmen Sie Ihre Anwendungsfรคlle und fรผhren Sie sie als eine Pipeline aus.
Hier sind die Grรผnde, warum Sie es verwenden sollten Jenkins Pipeline:
- Die Pipeline ist als Code implementiert, sodass mehrere Benutzer den Prozess bearbeiten und ausfรผhren kรถnnen.
- Pipelines sind robust: Sollte der Server unerwartet neu starten, wird die Pipeline automatisch fortgesetzt.
- Sie kรถnnen eine Pipeline pausieren und so lange anhalten, bis ein Benutzer eine Eingabe macht.
- Pipelines unterstรผtzen groรe Projekte: Sie ermรถglichen das Ausfรผhren mehrerer Jobs und sogar die Verwendung von Pipelines in einer Schleife.
Jenkins Pipeline Concepts
Vier Begriffe kehren in jedem JenkinsDatei:
| Bedingungen | Beschreibung |
|---|---|
| Pipeline | Eine als Code geschriebene Anweisungsfolge, die den gesamten Build-Prozess fรผr Continuous Delivery abdeckt. Mit einer Pipeline kรถnnen Sie die Anwendung erstellen, testen und ausliefern. |
| Knoten | Die Maschine, auf der Jenkins Ein Lauf wird als Knoten bezeichnet. Ein Knotenblock wird hauptsรคchlich in der skriptbasierten Pipeline-Syntax verwendet. |
| Praktikum | Ein Phasenblock enthรคlt eine Reihe von Schritten. Die Prozesse โErstellenโ, โTestenโ und โBereitstellenโ werden jeweils in einer Phase zusammengefรผhrt, die auch in der Pipeline-Ansicht visualisiert wird. |
| Schritt | Eine einzelne Aufgabe, die einen bestimmten Prozess zu einem festgelegten Zeitpunkt ausfรผhrt. Eine Pipeline ist eine Abfolge von Schritten. |
Installieren Sie das Build-Pipeline-Plugin in Jenkins
Das Build-Pipeline-Plugin erstellt eine Pipeline-Ansicht der eingehenden und ausgehenden Jobs und fรผgt Auslรถser fรผr manuelle Eingriffe hinzu.
Installieren Sie es wie folgt:
Schritt 1) Die Einstellungen fรผr das Plugin finden Sie unter Verwalten Jenkins > Plugins verwalten, unten gezeigt.
โ ๏ธ Versionshinweis: Strom Jenkins Verรถffentlichungen kennzeichnen diesen Bildschirm Verwalten Jenkins โ PluginsDie Tabs verhalten sich wie hier beschrieben.
Wenn Sie das Plugin bereits installiert haben, wird es unter der Registerkarte โInstalliertโ angezeigt.
Schritt 2) Falls das Plugin noch nicht installiert ist, wird es unter dem Reiter โVerfรผgbarโ angezeigt.
Mit installiertem Plugin:
So erstellen Sie Jenkins Pipeline
Sobald Sie bei Ihrem angemeldet sind Jenkins Dashboard:
Schritt 1) Klicken Sie auf die Schaltflรคche โ+โ auf der linken Seite Ihres Jenkins Dashboard zum Erstellen einer Pipeline.
Schritt 2) Fรผllen Sie den neuen Ansichtsdialog aus:
- Geben Sie der Pipeline-Ansicht einen Namen. Wir nennen sie โGuru99 Pipelineโ fรผr diese Demo.
- Wรคhlen Sie unter Optionen die Ansicht โPipeline erstellenโ aus.
- Klicken Sie auf OK, wie unten dargestellt.
Schritt 3) Auf der nรคchsten Seite werden weitere Konfigurationsdetails abgefragt. รbernehmen Sie die Standardeinstellungen und wรคhlen Sie unbedingt den ersten Auftrag unter den Einstellungen aus.
Klicken Sie auf Anwenden und dann auf OK.
Anschlieรend wird die Beispiel-Pipeline-Ansicht Ihres Elements angezeigt:
Ausfรผhren eines Pipeline-Builds
Schritt 1) Verketten Sie zuerst Ihre Jobs: รffnen Sie Ihren ersten Job und klicken Sie auf Konfigurieren.
Schritt 2) Aktivieren Sie nun unter Build-Trigger die Option "Erstellen, nachdem andere Projekte erstellt wurden".
Es gibt jetzt eine Kette fรผr all Ihre Jobs.
Schritt 3) Installieren Sie das Build Pipeline View-Plugin, falls Sie es noch nicht installiert haben.
Schritt 4) Auf dem Jenkins Dashboard, erstellen Sie eine Ansicht mit der Schaltflรคche โ+โ, wรคhlen Sie die Option Build Pipeline View aus und klicken Sie auf OK.
Schritt 5) Suchen Sie unter โPipeline-Ansichtskonfigurationโ nach โPipeline-Ablaufโ.
Wรคhlen Sie unter โPipeline-Ablaufโ den ersten auszufรผhrenden Job aus โ den Job, der in den Schritten 1 und 2 mit den anderen Jobs verkettet ist.
GuruHier wird Projekt 1 als erster Job ausgewรคhlt, sodass die verketteten Jobs nacheinander ausgefรผhrt werden.
Wรคhrend die Pipeline in Betrieb ist, zeigen rote und grรผne Symbole ihren Zustand an: Rot bedeutet Ausfall, Grรผn bedeutet Erfolg.
In diesem Beispiel ist der Button grรผn, die Pipeline war also erfolgreich.
Laufen Jenkins Pipeline
Klicken Sie auf โAusfรผhrenโ, um den Vorgang zu starten. Jenkins Pipeline. Sie wird in etwa so aussehen:
Das obige Beispiel erstellt ein einfaches โhelloworld.javaโ-Programm. Reale Projekte verketten weitaus komplexere Pipelines, wie die detailliertere Ansicht unten zeigt.
โ ๏ธ Versionshinweis: Das Build-Pipeline-View-Plugin ist die herkรถmmliche Methode zur Visualisierung verketteter Freestyle-Jobs; die aktuelle Vorgehensweise definiert denselben Ablauf in einem JenkinsDatei. Blau Ocean wird nicht mehr verbessert.
Best Practices fรผr die Anwendung Jenkins Pipeline
Sieben Gewohnheiten sorgen fรผr eine wartungsfreundliche Pipeline:
- Verwenden Sie das Original Jenkins Pipeline
- Entwickeln Sie Ihre Pipeline als Code
- Alle Nicht-Setup-Arbeiten in Ihrer Pipeline sollten innerhalb eines Phasenblocks erfolgen.
- Alle wesentlichen Arbeiten in einer Pipeline mรผssen innerhalb eines Knotenblocks ausgefรผhrt werden.
- Verwenden Sie keine Eingabe innerhalb eines Knotenblocks.
- Legen Sie niemals Umgebungsvariablen mit der globalen Variablen env fest
- Wickeln Sie Ihre Eingaben in eine Zeitรผberschreitung ein













