En Jenkinsfile er en tekstfil som inneholder instruksjoner for å bygge et prosjekt og kjøre tester i Jenkins.
En Jenkinsfile brukes vanligvis til å definere en Jenkins -rørledning og blir sjekket inn i kildekontroll sammen med resten av prosjektkildekoden. Hvis Jenkinsfile endres, vil Jenkins -forekomsten oppdage endringene og gjenoppbygge prosjektet med instruksjonene som er spesifisert i filen.
Å bruke en Jenkinsfile hjelper til med å automatisere bygg- og testprosessen og sikrer at prosjektet er bygget konsekvent hver gang. Det gjør også å dele og gjenbruke byggekonfigurasjoner på tvers av forskjellige prosjekter enkelt.
Når du jobber med en Jenkinsfile, kan du møte en forekomst der du trenger å lagre verdier som brukes senere i filen eller referert av andre deler av skriptet. Det er her Jenkinsfile -variabler spiller inn.
I denne opplæringen lærer vi hvordan du bruker variabler i en Jenkinsfile for å lagre verdier for senere bruk.
Hva er en Jenkinsfile -variabel?
En Jenkinsfile -variabel refererer til en lagringsbeholder definert og brukt til å lagre og referere til verdier som kan endres i skriptet.
I de fleste tilfeller definerer vi variabler i begynnelsen av Jenkinsfile. Variablene vil inneholde et globalt omfang, noe som betyr at de kan nås når som helst i Jenkinfile.
Hvordan definere en variabel i deklarativ Jenkinsfile
Tenk på følgende Jenkinfile som skriver ut en enkel Hello World -tekst til konsollen.
rørledning
agent noen
Stadier
scene ('hei')
trinn
ekko 'Hello World'
Anta at vi ønsker å legge til en variabel som inneholder en gitt streng og skrive den ut til konsollen i stedet for "Hello World"?
Vi kan starte med å definere en ny variabel for å holde meldingen til utgangen til konsollen.
I en Jenkinsfile definerer vi en variabel ved å bruke DEF -nøkkelordet etterfulgt av navnet på variabelen, tildelingsoperatøren og variabelenes verdi.
For eksempel:
def msg = "Dette er en tilpasset tekst"
Eksemplet ovenfor definerer en variabel kalt MSG som holder en strengverdi.
Variabler er dynamiske. Derfor trenger vi ikke å spesifisere datatypen under variabel erklæring.
Vi kan deretter bruke variabelen som vist:
def msg = "Dette er en tilpasset tekst"
rørledning
agent noen
Stadier
scene ('hei')
trinn
ekko "$ msg"
Forsikre deg om å legge ved meldingen i anførselstegn.
Når vi har bygd rørledningen, bør vi se teksten trykt i konsollen som vist:
Hvis du ønsker å endre verdien på en forhåndsdefinert variabel, kan du bruke en skriptblokk som vist:
Stages ()
trinn ()
manus
msg = "nå er strengen annerledes!!""
Følgende viser full rørledningsdefinisjon.
def msg = "Dette er en tilpasset tekst"
rørledning
agent noen
Stadier
scene ('hei')
trinn
manus
msg = "nå er strengen annerledes!!""
ekko "$ msg"
Å kjøre rørledningen ovenfor skal returnere teksten:
Konklusjon
I denne artikkelen oppdaget du hvordan du kan definere variabler i en Jenkinsfile og lærte hvordan du bruker variablene og endrer verdiene sine i en Jenkinsfile.