Parametry Jenkinsfile

Parametry Jenkinsfile

Jenkinsfile to plik tekstowy, który zawiera definicję rurociągu Jenkins i jest sprawdzany w kontroli źródła. Służy do automatyzacji części rurociągu CI/CD, definiując zadania i parametry, których Jenkins może użyć do uruchamiania tych zadań.

Jednym ze sposobów parametryzacji Jenkinsfile jest użycie parametrów. Parametry umożliwiają przekazanie danych do JenkinsFile w czasie wykonywania. Może to być przydatne do konfiguracji specyficznych dla środowiska lub przekazywania wartości specyficznych do bieżącej kompilacji.

W tym samouczku nauczysz się, jak używać parametrów Jenkinsfile w rurociągu Jenkins.

Wymagania:

  1. Podstawowa znajomość Jenkinsa i wtyczki Jenkins Pipeline
  2. Instancja Jenkins z zainstalowaną wtyczką rurociągu Jenkins
  3. Jenkinsfile w Twoim repozytorium kontroli źródła

Jenkins deklaruje parametry

Przed użyciem jakichkolwiek parametrów w Jenkinsfile, najpierw musimy je zadeklarować w Jenkinsfile. Możemy to osiągnąć za pomocą bloku parametrów.

Weźmy na przykład sekcję rurociągu pokazaną poniżej:

rurociąg
parametry
ciąg (nazwa: „środowisko”, defaultValue: „dev”, opis: „środowisko do wdrożenia”)
boolean (nazwa: „wdrożenie”, defaultValue: false, Opis: „Czy wdrożyć, czy nie”)


W powyższym przykładzie Jenkinsfile zawiera dwa parametry jako:

  1. ŚRODOWISKO - Parametr ciągów o wartości domyślnej „Dev.'
  2. WDROŻYĆ - parametr logiczny o wartości domyślnej fałszu.

Możemy określić dowolną liczbę parametrów w bloku parametrów. Jenkins obsługuje różne typy parametrów, w tym:

  1. String Rodzaje parametrów - Służy do przechowywania sekwencji znaków
  2. Parametry tekstowe - podobny do typu parametru ciągów, ale może obejmować wiele linii. Przykładem jest parametr opisu, jak pokazano w poprzednim przykładzie.
  3. Booleanparam - Booleanparam lub boolean służy do przechowywania wartości prawdy lub falistych.
  4. Wybór - Z drugiej strony parametry wyboru pozwalają na przechowywanie wartości wielokrotnego wyboru.
  5. Hasło - Parametry haseł są używane do przechowywania haseł i poświadczeń uwierzytelniania.

Parametry dostępu Jenkins

Po ogłoszeniu twoich parametrów w JenkinsFile możemy uzyskać dostęp do ich wartości za pomocą obiektu $ params.

Na przykład, aby uzyskać dostęp do wartości parametru środowiska na etapie, możemy użyć $ params.ŚRODOWISKO.

Przykładowa demonstracja

Weźmy przykładowy rurociąg poniżej, który pokazuje, jak używać różnych typów parametrów w Jenkins:

rurociąg
agent dowolny
parametry
String (nazwa: „Nazwa”, DefaultValue: „Jenkins”, Opis: „nazwa użytkownika”)
tekst (nazwa: „desc”, defaultValue: ", Opis:„ Opis o użytkowniku. ')
booleanparam (nazwa: „przełącz”, defaultValue: true, Opis: „Włącz/wyłącz”)
Wybór (nazwa: „wybór”, wybory: [1,2,3,4,5], Opis: „Wybierz wartość”)
hasło (nazwa: „passwd”, defaultValue: „Secret”, Opis: „Podaj hasło”)

Etapy
etap („przykład”)
kroki
echo "Hello $ params.nazwa"
echo "dec: $ params.desc "
echo "przełącz: $ params.przełącznik"
echo "wybór: $ params.wybór"
echo "hasło: $ params.passwd "



Wyjście:

Jenkins ustal wartość

W deklaratywnym Jenkinsfile możemy ustawić wartość danego parametru, jak pokazano w poniższym przykładzie:

rurociąg
parametry
String (nazwa: „środowisko”, defaultValue: „dev”, opis: „środowisko do wdrożenia”, wartość: „Prod”)

W tym przykładzie parametr środowiska będzie zawsze ustawiony na „Prod” podczas uruchamiania kompilacji.

Podczas pracy w skryptowym JenkinsFile możemy ustawić wartość dla danego parametru za pomocą polecenia kompilacji. Przykładem demonstancji jest jak pokazano:

węzeł

etap („wdrożenie”)
Zbuduj zadanie: „wdrożenie”, parametry: [[$ class: 'StringParameTervalue', nazwa: „środowisko”, wartość: „Prod”]]]

W takim przypadku wartość rurociągu zmiennej środowiskowej jest zawsze ustawiona na produkt.

Ustawienie wartości domyślnej parametru

Dobrym pomysłem jest ustawienie wartości domyślnych dla zdefiniowanych parametrów, jeśli wartość nie jest podana podczas procesu kompilacji. Możemy to osiągnąć za pomocą parametru wartości domyślnej, jak pokazano w poniższym przykładzie:

parametry
ciąg (nazwa: „środowisko”, defaultValue: „dev”, opis: „środowisko do wdrożenia”)

W takim przypadku parametr środowiska będzie domyślnie „dev”, jeśli wartość nie zostanie dostarczona podczas kompilacji.

Wniosek

W tym artykule odkryłeś, jak używać parametrów Jenkinsfile w rurociągu Jenkins. Nauczyłeś się, jak zadeklarować parametry w JenkinsFile, uzyskać dostęp do ich wartości i ustawić wartość parametru podczas procesu kompilacji. Na koniec odkryliśmy, jak używać parametru wartości domyślnej, aby przypisać wartość domyślną do danego parametru, jeśli brakuje wartości.

Korzystając z parametrów JenkinsFile, możemy sprawić, że nasz rurociąg Jenkins będzie bardziej elastyczny i łatwiejszy do dostosowania dla różnych środowisk i przypadków użycia.