Tutorial Jenkins Pipeline: Cum să creați JenkinsFile (Exemplu)
Ce este Jenkins Pipeline?
Conducta Jenkins este o combinație de pluginuri care acceptă integrarea și implementarea conductelor de livrare continuă. Are un server de automatizare extensibil pentru a crea conducte de livrare simple și complexe ca cod prin conducta DSL. O conductă este un grup de evenimente interconectate între ele într-o secvență.
Ce este conductele de livrare continuă? Cum functioneaza?
Într-o conductă Jenkins, fiecare job sau eveniment are un fel de dependență de cel puțin unul sau mai multe evenimente.

Imaginea de mai sus reprezintă o conductă de livrare continuă în Jenkins. Conține un grup de stări numite build, deploy, test and release. Aceste evenimente sunt interconectate între ele. Fiecare stare are evenimentele sale, care funcționează într-o secvență numită conductă de livrare continuă.
O conductă de livrare continuă este o expresie automată pentru a afișa procesul dvs. de obținere a software-ului pentru controlul versiunilor. Astfel, fiecare modificare făcută în software-ul dvs. trece printr-un număr de procese complexe pe cale de a fi lansată. De asemenea, implică dezvoltarea software-ului într-o manieră fiabilă și repetabilă și progresia software-ului construit prin mai multe etape de de testare și desfășurare.
Ce este un JenkinsFile?
Conductele Jenkins pot fi definite folosind un fișier text numit JenkinsFile. Puteți implementa pipeline ca cod folosind JenkinsFile, iar acest lucru poate fi definit folosind un limbaj specific domeniului (DSL). Cu JenkinsFile, puteți scrie pașii necesari pentru rularea unei conducte Jenkins.
Avantajele utilizării JenkinsFile sunt:
- Puteți crea conducte automat pentru toate ramurile și puteți executa cereri de extragere doar cu una JenkinsFile.
- Puteți verifica codul dvs. Jenkins pe conductă
- Puteți să vă auditați conducta Jenkins
- Aceasta este sursa singulară pentru conducta dvs. și poate fi modificată de mai mulți utilizatori.
JenkinsFile poate fi definit fie prin UI Web, fie cu un fișier Jenkins.
Sintaxa pipeline declarativă versus scriptată:
Există două tipuri de sintaxă a conductei Jenkins utilizate pentru definirea fișierului dvs. Jenkins.
- Declarativ
- Scriptat
Declarativ:
Sintaxa pipeline declarativă oferă o modalitate ușoară de a crea conducte. Conține o ierarhie predefinită pentru a crea conducte Jenkins. Vă oferă posibilitatea de a controla toate aspectele execuției unei conducte într-un mod simplu și direct.
Scenizat:
Conducta Jenkins scriptată rulează pe masterul Jenkins cu ajutorul unui executant ușor. Utilizează foarte puține resurse pentru a traduce conducta în comenzi atomice. Atât sintaxa declarativă, cât și cea scriptată sunt diferite una de cealaltă și sunt definite total diferit.
De ce să folosiți conducta lui Jenkin?
Jenkins este deschis server de integrare continuă care are capacitatea de a sprijini automatizarea proceselor de dezvoltare software. Puteți crea mai multe joburi de automatizare cu ajutorul cazurilor de utilizare și le puteți rula ca o conductă Jenkins.
Iată motivele pentru care ar trebui să utilizați conducta Jenkins:
- Jenkins pipeline este implementat ca un cod care permite mai multor utilizatori să editeze și să execute procesul pipeline.
- Conductele sunt robuste. Deci, dacă serverul dvs. suferă o repornire neprevăzută, conducta va fi reluată automat.
- Puteți întrerupe procesul pipeline și îl puteți aștepta să se reia până când există o intrare din partea utilizatorului.
- Jenkins Pipelines sprijină proiecte mari. Puteți rula mai multe lucrări și chiar puteți utiliza conducte într-o buclă.
Conducta Jenkins Concepts
Termen | Descriere |
---|---|
Conductă | Conducta este un set de instrucțiuni date sub formă de cod pentru livrare continuă și constă în instrucțiuni necesare pentru întregul proces de construire. Cu pipeline, puteți construi, testa și livra aplicația. |
Nod | Mașina pe care rulează Jenkins se numește nod. Un bloc de noduri este utilizat în principal în sintaxa pipelinei scriptate. |
Etapă | Un bloc de etape conține o serie de pași într-o conductă. Adică, procesele de construire, testare și implementare se reunesc într-o etapă. În general, un bloc de etape este utilizat pentru a vizualiza procesul conductei Jenkins. |
Pas | Un pas nu este altceva decât o singură sarcină care execută un anumit proces la un moment definit. O conductă implică o serie de pași. |
Instalați Build Pipeline Plugin în Jenkins
Cu construi o conductă plugin, puteți crea o vizualizare pipeline a joburilor primite și ieșite și puteți crea declanșatoare care necesită intervenție manuală.
Iată cum puteți instala construi o conductă plugin în Jenkins:
Etapa 1) Setările pentru plugin pot fi găsite sub,
Gestionați Jenkins > Gestionați pluginurile.
Dacă ați instalat deja pluginul, acesta este afișat în fila Instalat.
Etapa 2) Dacă nu aveți pluginul instalat anterior,
apare sub Disponibil tab.
Odată ce ați instalat cu succes construi o conductă plugin în Jenkins, urmați acești pași pentru a vă crea pipeline Jenkins:
Cum se creează conducta Jenkins
După ce v-ați conectat la tabloul de bord Jenkins:
Etapa 1) Faceți clic pe "+" butonul din partea stângă a tabloului de bord Jenkins pentru a crea o conductă.
Etapa 2)
- Vi se va cere să dați un nume vizualizării pipeline. O vom numi „Conducta Guru99” pe durata acestui demo.
- Selectați Creați o vizualizare a conductei în Opțiuni
- Clic ok
Etapa 3) În pagina următoare, vi se vor cere mai multe detalii pentru a vă configura conducta Jenkins. Doar acceptați setările implicite și asigurați-vă că alegeți prima lucrare din setări.
Faceţi clic pe Aplică și apoi OK.
Aceasta vă va afișa exemplul de vizualizare a canalului dvs., după cum este prezentat mai jos:
Rularea unei build Pipeline
Etapa 1) Pentru a rula o construcție de conducte, mai întâi trebuie să vă înlănțuiți joburile. Pentru aceasta, accesați primul loc de muncă și faceți clic pe configurare.
Etapa 2) Acum, sub Construiți declanșatoare, verifică Construiți după ce sunt construite alte proiecte opțiune.
Astfel, a fost creat un lanț pentru toate locurile de muncă tale.
Etapa 3) Instalați Creați vizualizarea Pipeline plugin dacă nu îl aveți deja instalat.
Etapa 4) Accesați tabloul de bord Jenkins și creați o vizualizare făcând clic pe „+butonul ”. Selectează Creați vizualizarea pipeline și faceți clic pe OK.
Etapa 5) Sub Configurația vizualizării conductei, localizați Fluxul conductei.
În Debitul conductei, selectați jobul inițial de rulat. Acum alegeți jobul care are lanțuri la alte joburi, așa cum se arată în Etapa 1 și Etapa 2.
Aici am selectat Proiectul Guru99 1 ca job inițial, legat de alte locuri de muncă. Deci, unul câte unul, lucrările vor rula în curs de desfășurare.
Când conducta Jenkins rulează, îi puteți verifica starea cu ajutorul simbolurilor de stare roșu și verde. Roșu înseamnă că conducta a eșuat, în timp ce verde indică succes.
În acest exemplu de conductă Jenkins, vedem că butonul este verde. Prin urmare, conducta are succes.
Conducerea conductei Jenkins
Faceţi clic pe Alerga să conducă conducta Jenkins. Va arata cam asa:
În exemplul de script al pipeline Jenkins de mai sus, demonstrăm un program simplu „helloworld.java”. Dar în proiectele în timp real, veți fi responsabil pentru crearea și construirea conductelor complexe în Jenkins. Vedeți mai jos pentru un exemplu de vizualizare a conductei.
Cele mai bune practici folosind Jenkins Pipeline:
- Utilizați conducta autentică Jenkins
- Dezvoltați-vă pipeline ca cod
- Orice lucru care nu este de configurare în conducta dvs. ar trebui să aibă loc într-un bloc de etapă.
- Orice lucrare materială într-o conductă trebuie efectuată într-un bloc de noduri.
- Nu utilizați intrarea într-un bloc de noduri.
- Nu setați niciodată variabile de mediu cu variabila globală env
- Încheiați intrările într-un timeout