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













