Jenkins Pipeline Tutorial: Hur man skapar JenkinsFile (exempel)
Vad är Jenkins Pipeline?
Jenkins pipeline är en kombination av plugins som stöder integration och implementering av kontinuerliga leveranspipelines. Den har en utbyggbar automationsserver för att skapa enkla och komplexa leveranspipelines som kod via pipeline DSL. En pipeline är en grupp händelser som är sammanlänkade med varandra i en sekvens.
Vad är Continuous Delivery Pipelines? Hur det fungerar?
I en Jenkins pipeline har varje jobb eller händelse någon form av beroende av minst en eller flera händelser.

Bilden ovan representerar en kontinuerlig leveranspipeline i Jenkins. Den innehåller en grupp tillstånd som kallas build, deploy, test and release. Dessa händelser är sammanlänkade med varandra. Varje stat har sina händelser, som fungerar i en sekvens som kallas en kontinuerlig leveranspipeline.
En kontinuerlig leveranspipeline är ett automatiserat uttryck för att visa din process för att få programvara för versionskontroll. Således går varje förändring som görs i din mjukvara genom ett antal komplexa processer på väg att släppas. Det innebär också att utveckla programvaran på ett tillförlitligt och repeterbart sätt, och att utveckla den byggda programvaran genom flera stadier av testning och utplacering.
Vad är en JenkinsFile?
Jenkins pipelines kan definieras med hjälp av en textfil som heter Jenkinsfil. Du kan implementera pipeline som kod med JenkinsFile, och detta kan definieras genom att använda ett domänspecifikt språk (DSL). Med JenkinsFile kan du skriva de steg som behövs för att köra en Jenkins-pipeline.
Fördelarna med att använda JenkinsFile är:
- Du kan skapa pipelines automatiskt för alla grenar och utföra pull-förfrågningar med bara en Jenkinsfil.
- Du kan granska din Jenkins-kod på pipeline
- Du kan granska din Jenkins pipeline
- Detta är den enda källan för din pipeline och kan modifieras av flera användare.
JenkinsFile kan definieras av antingen webbgränssnittet eller med en Jenkins-fil.
Deklarativ kontra skriptad pipelinesyntax:
Det finns två typer av Jenkins pipeline-syntax som används för att definiera din JenkinsFile.
- deklarativ
- skript
Deklarativ:
Deklarativ pipelinesyntax erbjuder ett enkelt sätt att skapa pipelines. Den innehåller en fördefinierad hierarki för att skapa Jenkins pipelines. Det ger dig möjligheten att kontrollera alla aspekter av en pipelineexekvering på ett enkelt och okomplicerat sätt.
Skript:
Scripted Jenkins pipeline körs på Jenkins mästare med hjälp av en lättviktig exekutor. Den använder väldigt få resurser för att översätta pipelinen till atomkommandon. Både deklarativ och skriptsyntax skiljer sig från varandra och definieras helt olika.
Varför använda Jenkins pipeline?
Jenkins är en öppen kontinuerlig integrationsserver som har förmågan att stödja automatisering av mjukvaruutvecklingsprocesser. Du kan skapa flera automatiseringsjobb med hjälp av användningsfall och köra dem som en Jenkins-pipeline.
Här är anledningarna till varför du bör använda Jenkins pipeline:
- Jenkins pipeline är implementerad som en kod som tillåter flera användare att redigera och exekvera pipelineprocessen.
- Rörledningar är robusta. Så om din server genomgår en oförutsedd omstart kommer pipelinen att återupptas automatiskt.
- Du kan pausa pipelineprocessen och få den att vänta med att återupptas tills det finns en input från användaren.
- Jenkins Pipelines stödjer stora projekt. Du kan köra flera jobb och till och med använda pipelines i en slinga.
Jenkins pipeline Concepts
Termin | Description |
---|---|
Pipeline | Pipelinen är en uppsättning instruktioner som ges i form av kod för kontinuerlig leverans och består av instruktioner som behövs för hela byggprocessen. Med pipeline kan du bygga, testa och leverera applikationen. |
Nod | Maskinen som Jenkins kör på kallas en nod. Ett nodblock används huvudsakligen i skriptad pipelinesyntax. |
Etapp | Ett stegblock innehåller en serie steg i en pipeline. Det vill säga att bygg-, test- och distributionsprocesserna samlas i ett steg. I allmänhet används ett stegblock för att visualisera Jenkins pipelineprocess. |
Steg | Ett steg är inget annat än en enskild uppgift som exekverar en specifik process vid en definierad tidpunkt. En pipeline innefattar en serie steg. |
Installera Build Pipeline Plugin i Jenkins
Med bygga pipeline plugin, kan du skapa en pipelinevy över inkommande och utgående jobb och skapa triggers som kräver manuellt ingripande.
Så här kan du installera bygga pipeline plugin i din Jenkins:
steg 1) Inställningarna för pluginet finns under,
Hantera Jenkins > Hantera plugins.
Om du redan har installerat plugin-programmet visas det under fliken installerad.
steg 2) Om du inte har plugin-programmet installerat tidigare,
det dyker upp under Tillgängliga fliken.
När du väl har installerat bygga pipeline plugin i din Jenkins, följ dessa steg för att skapa din Jenkins pipeline:
Hur man skapar Jenkins Pipeline
När du är inloggad på din Jenkins instrumentpanel:
steg 1) Klicka på "+" knappen på vänster sida av din Jenkins instrumentpanel för att skapa en pipeline.
steg 2)
- Du kommer att bli ombedd att ge ett namn till pipelinevyn. Vi ska kalla det "Guru99 Pipeline” under hela den här demon.
- Välja Bygg en pipelinevy under alternativ
- Klicka ok
steg 3) På nästa sida kommer du att bli ombedd att ange lite mer information för att konfigurera din Jenkins-pipeline. Acceptera bara standardinställningarna och se till att du väljer det första jobbet under inställningarna.
Klicka på Ansök och då OK.
Detta kommer att visa dig ett exempel på pipelinevyn för ditt föremål, enligt nedan:
Kör ett pipelinebygge
steg 1) För att driva en pipelineuppbyggnad måste du först koppla ihop dina jobb. För detta, gå till ditt första jobb och klicka på konfigurera.
steg 2) Nu under Bygg utlösare, kolla Bygg efter att andra projekt har byggts alternativ.
Därmed har en kedja för alla dina jobb skapats.
steg 3) Installera Bygg Pipeline-vy plugin om du inte redan har det installerat.
steg 4) Gå till din Jenkins instrumentpanel och skapa en vy genom att klicka på "+" knapp. Välj Bygg Pipeline View alternativ och klicka OK.
steg 5) Under Konfiguration av pipelinevy, lokalisera Rörledningsflöde.
Enligt Rörledningsflöde, välj det första jobbet som ska köras. Välj nu jobbet som har kedjor till andra jobb, som visas i steg 1 och steg 2.
Här har vi valt Guru99 Projekt 1 som det första jobbet, kedjat till andra jobb. Så, ett efter ett, kommer jobben att löpa i pipeline.
När Jenkins pipeline är igång kan du kontrollera dess status med hjälp av röda och gröna statussymboler. Rött betyder att pipelinen har misslyckats, medan grön indikerar framgång.
I detta Jenkins pipeline-exempel ser vi att knappen är grön. Därför är pipelinen framgångsrik.
Kör Jenkins pipeline
Klicka på Körning att driva Jenkins pipeline. Det kommer att se ut ungefär så här:
I Jenkins pipeline-skriptexempel ovan demonstrerar vi ett enkelt "helloworld.java"-program. Men i realtidsprojekt kommer du att ansvara för att skapa och bygga komplexa pipelines i Jenkins. Se nedan för ett exempel på pipeline.
Bästa metoder för att använda Jenkins Pipeline:
- Använd den äkta Jenkins Pipeline
- Utveckla din pipeline som kod
- Allt icke-installationsarbete i din pipeline bör ske inom ett stegblock.
- Allt materialarbete i en rörledning måste utföras inom ett nodblock.
- Använd inte indata inom ett nodblock.
- Ställ aldrig in miljövariabler med env global variabel
- Slå in dina inmatningar i en timeout