JenkinsFile -Parameter

JenkinsFile -Parameter

Eine JenkinsFile ist eine Textdatei, die die Definition einer Jenkins -Pipeline enthält und in die Quellensteuerung überprüft wird. Es wird verwendet, um Teile der CI/CD -Pipeline zu automatisieren und Aufgaben und Parameter zu definieren, mit denen Jenkins diese Aufgaben ausführen können.

Eine Möglichkeit zur Parametrisierung einer JenkinsFile besteht darin, Parameter zu verwenden. Mit Parametern können Sie Daten zur Laufzeit in eine Jenkinsfile übergeben. Dies kann für umgebungsspezifische Konfigurationen oder das Bestehen der für den aktuellen Build spezifischen Werte nützlich sein.

In diesem Tutorial lernen Sie, wie Sie JenkinsFile -Parameter in einer Jenkins -Pipeline verwenden.

Anforderungen:

  1. Grundkenntnisse über Jenkins und das Jenkins Pipeline Plugin
  2. Eine Jenkins -Instanz mit dem Jenkins Pipeline Plugin installiert
  3. Eine Jenkinsfile in Ihrem Quellungssteuerungs -Repository

Jenkins deklarieren Parameter

Bevor wir Parameter in einer Jenkinsfile verwenden, müssen wir sie zunächst in der Jenkins -Datei deklarieren. Wir können dies durch den Parameterblock erfolgen.

Nehmen wir zum Beispiel den unten angegebenen Pipeline -Abschnitt:

Pipeline
Parameter
String (Name: 'Umgebung', defaultValue: 'dev', Beschreibung: 'Die Umgebung zum Bereitstellen'))
boolean (Name: 'Bereitstellung', defaultValue: false, Beschreibung: 'Ob bereitgestellt oder nicht'))


Im obigen Beispiel enthält die JenkinsFile zwei Parameter als:

  1. UMFELD - Ein String -Parameter mit einem Standardwert von 'Dev.''
  2. EINSETZEN - Ein boolescher Parameter mit einem Standardwert von Falsch.

Wir können eine beliebige Anzahl von Parametern innerhalb des Parameterblocks angeben. Jenkins unterstützt verschiedene Parametertypen, darunter:

  1. String -Parametertypen - Wird verwendet, um eine Abfolge von Zeichen zu speichern
  2. Textparameter - Ähnlich wie der String -Parametertyp, kann aber mehrere Zeilen umfassen. Ein Beispiel ist ein Beschreibungsparameter, wie im vorherigen Beispiel gezeigt.
  3. Booleanparam - Booleanparam oder boolean wird verwendet, um Wahrheitswerte oder falsy -Werte zu speichern.
  4. Auswahl - Auswahlparameter hingegen können Sie Multiple -Choice -Werte speichern.
  5. Passwort - Kennwortparameter werden zum Speichern von Kennwörtern und Authentifizierungsanmeldeinformationen verwendet.

Jenkins Zugriffsparameter

Sobald wir Ihre Parameter in der JenkinsFile deklariert haben, können wir mit dem $ Params -Objekt auf ihre Werte zugreifen.

Zum Beispiel können wir $ Params verwenden, um auf den Wert des Umgebungsparameters in einer Phase zuzugreifen.UMFELD.

Beispieldemonstration

Nehmen Sie die folgende Beispielpipeline, die zeigt, wie verschiedene Parametertypen in Jenkins verwendet werden:

Pipeline
Agent jeder
Parameter
String (Name: 'Name', DefaultValue: 'Jenkins', Beschreibung: 'Benutzername')
Text (Name: 'Desc', defaultValue: ", Beschreibung: 'Beschreibung über den Benutzer. '))
booleanparam (Name: 'Toggle', defaultValue: true, Beschreibung: 'Enable/Deaktivieren')
Auswahl (Name: "Auswahl", Auswahl: [1,2,3,4,5], Beschreibung: "Wählen Sie einen Wert")
Passwort (Name: 'Passwd', defaultValue: 'Geheimnis', Beschreibung: 'Passwort geben')

Stufen
Stage ('Beispiel')
Schritte
echo "Hallo $ Params.Name"
Echo "Desc: $ Params.Desc "
Echo "Toggle: $ Params.Umschalten"
Echo "Auswahl: $ Params.Auswahl"
Echo "Passwort: $ Params.Passwd "



Ausgang:

Jenkins setzen Wert

In einer deklarativen JenkinsFile können wir einen Wert eines bestimmten Parameters festlegen, wie im folgenden Beispiel gezeigt:

Pipeline
Parameter
String (Name: 'Umgebung', defaultValue: 'dev', Beschreibung: 'Die Umgebung zum Bereitstellen von', Wert: 'prod')

In diesem Beispiel wird der Umgebungsparameter beim Ausführen des Builds immer auf "Prod" gesetzt.

Bei der Arbeit in einer Skript -JenkinsFile können wir den Wert für einen bestimmten Parameter mit dem Befehl bauen festlegen. Ein Beispiel für eine Dämonstation ist wie gezeigt:

Knoten

Stage ('bereit')
Build -Job: 'Bereitstellen', Parameter: [$ class: 'StringParameterValue', Name: 'Umgebung', Wert: 'prod']]

In diesem Fall wird der Pipeline -Wert der Umgebungsvariablen immer auf Prod eingestellt.

Standardwert des Parameters Einstellung

Es ist eine gute Idee, Standardwerte für die definierten Parameter festzulegen, wenn der Wert während des Build -Prozesses nicht bereitgestellt wird. Wir können dies erreichen, indem wir den Parameter Standard -Value -Parameter verwenden, wie im folgenden Beispiel gezeigt:

Parameter
String (Name: 'Umgebung', defaultValue: 'dev', Beschreibung: 'Die Umgebung zum Bereitstellen'))

In diesem Fall wird der Umgebungsparameter standardmäßig "dev", wenn während des Builds kein Wert bereitgestellt wird.

Abschluss

In diesem Artikel haben Sie festgestellt, wie Sie JenkinsFile -Parameter in einer Jenkins -Pipeline verwenden können. Sie haben gelernt, wie man Parameter in der Jenkinsfile deklariert, auf ihre Werte in Stufen zugreift und den Parameterwert während des Build -Prozesses festgelegt. Schließlich haben wir festgestellt, wie der Standardwertparameter verwendet wird, um einem bestimmten Parameter einen Standardwert zuzuweisen, wenn der Wert fehlt.

Mit JenkinsFile -Parametern können wir unsere Jenkins -Pipeline flexibler und einfacher für verschiedene Umgebungen und Anwendungsfälle anpassen lassen.