Jenkins Vodič za cjevovod: Kako stvoriti JenkinsDatoteka (primjer)
⚡ Pametni sažetak
Jenkins Veze cjevovoda grade, testiraju i implementiraju poslove u jedan uređeni niz koji se izvršava kao kod. JenkinsDatoteka pohranjena pored projekta pretvara taj slijed u preglednu, verziranu definiciju isporuke.
Što je Jenkins Cjevovod?
Jenkins Pipeline je kombinacija dodataka koji podržavaju integraciju i implementaciju cjevovodi za kontinuiranu dostavuTo je proširivi automatizacijski poslužitelj za stvaranje jednostavnih i složenih cjevovoda isporuke kao koda putem DSL-a cjevovoda. Cjevovod je skupina događaja međusobno povezanih u nizu.
Što su kontinuirani cjevovodi isporuke? Kako radi?
U Jenkins U cjevovodu, svaki posao ili događaj ima neku vrstu ovisnosti o barem jednom ili više događaja, kao što je prikazano na donjem dijagramu.

Gornja slika predstavlja cjevovod za kontinuiranu isporuku u Jenkins, sastavljen od stanja nazvanih izgradnja, postavljanje, testiranje i objavljivanje. Svako stanje ima svoje vlastite događaje koji se izvršavaju u nizu.
Cjevovod kontinuirane isporuke automatski izražava taj proces, prenoseći softver od kontrole verzija do izdanja kroz jedan ponovljivi niz izrada, testiranje i faze implementacije.
Što je a JenkinsDatoteka?
Jenkins Cjevovodi se mogu definirati u tekstualnoj datoteci pod nazivom JenkinsDatoteka. Izražava cjevovod kao kod u domenski specifičnom jeziku (DSL) i sadrži svaki korak potreban za pokretanje cjevovoda.
Prednosti korištenja JenkinsDatoteka je:
- jedan JenkinsDatoteka može kreirati cjevovode za svaku granu i izvršavati zahtjeve za povlačenjem.
- Možete pregledati svoje Jenkins kod na cjevovodu
- Možete revidirati svoje Jenkins cjevovod
- Ovo je jedinstveni izvor za vaš cjevovod i može ga mijenjati više korisnika.
Cjevovod se može definirati u Jenkins web sučelje ili u JenkinsDatoteka predana kontroli izvora. Minimalna deklarativna datoteka ima fiksni oblik - blok cjevovoda, agenta i faze koje sadrže jednu fazu po fazi.
pipeline { agent any stages { stage('Build') { steps { echo 'Building' } } stage('Test') { steps { echo 'Testing' } } stage('Deploy') { steps { echo 'Deploying' } } } }
Spremanjem u korijen repozitorija verzije cjevovoda s kodom.
Deklarativna naspram skriptirane sintakse cjevovoda
Postoje dvije vrste Jenkins sintaksa cjevovoda koja se koristi za definiranje vašeg JenkinsDatoteka.
- koji tumači
- Scenarij
koji tumači
Deklarativna sintaksa cjevovoda je lakši put. Slijedi unaprijed definiranu hijerarhiju i dalje kontrolira svaki aspekt izvršavanja cjevovoda na jednostavan način.
Scenarij
Scenarij Jenkins cjevovod teče na Jenkins kontroler putem laganog izvršitelja, koristeći vrlo malo resursa za prevođenje cjevovoda u atomske naredbe. Dva su napisana prilično različito, pa odaberite jedan po JenkinsDatoteka.
⚠️ Bilješka: Jenkins sada poziva majstor o kontrolor.
Zašto koristiti Jenkins Cjevovod?
Jenkins je otvoren poslužitelj za kontinuiranu integraciju koji automatizira procesi razvoja softveraMožete stvoriti više poslovi automatizacije iz vaših slučajeva upotrebe i pokrenite ih kao jedan cjevovod.
Evo razloga zašto biste trebali koristiti Jenkins cjevovod:
- Cjevovod je implementiran kao kod, tako da više korisnika može uređivati i izvršavati proces.
- Cjevovodi su robusni: ako se poslužitelj neočekivano ponovno pokrene, cjevovod se automatski nastavlja.
- Možete pauzirati cjevovod i zadržati ga dok korisnik ne unese nešto.
- Cjevovodi podržavaju velike projekte: pokretanje više poslova, pa čak i korištenje cjevovoda u petlji.
Jenkins Cjevovod Concepts
Četiri termina se ponavljaju u svakom JenkinsFile:
| Termin | Description |
|---|---|
| Cjevovod | Skup instrukcija napisanih kao kod koji pokriva cijeli proces izgradnje za kontinuiranu isporuku. Pomoću cjevovoda možete izgraditi, testirati i isporučiti aplikaciju. |
| Čvor | Stroj na kojem Jenkins izvodi se naziva čvor. Blok čvora se uglavnom koristi u sintaksi skriptiranog cjevovoda. |
| Stadij | Blok faze sadrži niz koraka. Procesi izgradnje, testiranja i implementacije spajaju se u fazi, što je ujedno i ono što vizualizira prikaz cjevovoda. |
| Korak | Pojedinačni zadatak koji izvršava određeni proces u definiranom vremenu. Cjevovod je niz koraka. |
Instalirajte dodatak Build Pipeline u Jenkins
Dodatak za izgradnju cjevovoda stvara prikaz cjevovoda dolaznih i odlaznih poslova i dodaje okidače za ručnu intervenciju.
Instalirajte ga na sljedeći način:
Korak 1) Postavke za dodatak možete pronaći pod upravljati Jenkins > Upravljanje dodacima, prikazano ispod.
⚠️ Napomena o verziji: struja Jenkins izdanja označavaju ovaj zaslon upravljati Jenkins → Dodaci; kartice se ponašaju kako je ovdje opisano.
Ako ste već instalirali dodatak, prikazan je ispod kartice instalirano.
Korak 2) Ako dodatak još nije instaliran, prikazat će se pod karticom Dostupno.
S instaliranim dodatkom:
Kako stvoriti Jenkins Cjevovod
Nakon što ste prijavljeni na svoj Jenkins kontrolna ploča:
Korak 1) Kliknite gumb "+" s lijeve strane vašeg Jenkins nadzorna ploča za stvaranje cjevovoda.
Korak 2) Ispunite dijalog novog prikaza:
- Dajte naziv prikazu cjevovoda. Nazvat ćemo ga "Guru99 Cjevovod” za ovu demonstraciju.
- Odaberite Izgradi prikaz cjevovoda pod opcijama
- Kliknite u redu, kao što je prikazano dolje.
Korak 3) Na sljedećoj stranici traže se dodatni detalji konfiguracije. Prihvatite zadane postavke i provjerite jeste li odabrali prvi zadatak u postavkama.
Kliknite na Primijeni, a zatim na U redu.
Zatim se pojavljuje primjer prikaza cjevovoda vaše stavke:
Pokretanje izgradnje cjevovoda
Korak 1) Prvo povežite svoje poslove: otvorite svoj prvi posao i kliknite na konfiguriraj.
Korak 2) Sada, pod Okidači izgradnje, označite opciju Izgradi nakon što su izgrađeni drugi projekti.
Sada postoji lanac za sve vaše poslove.
Korak 3) Instalirajte dodatak za prikaz Build Pipeline ako ga već nemate instaliran.
Korak 4) Na Jenkins nadzornu ploču, stvorite prikaz pomoću gumba „+“, odaberite opciju Izradi prikaz cjevovoda i kliknite U redu.
Korak 5) Pod Konfiguracija prikaza cjevovoda pronađite Protok cjevovoda.
U odjeljku Tijek cjevovoda odaberite početni zadatak za pokretanje - zadatak povezan s ostalima u koracima 1 i 2.
GuruOvdje je kao početni zadatak odabran Projekt 1, tako da se ulančani poslovi izvode jedan po jedan.
Dok cjevovod radi, crveni i zeleni simboli označavaju njegovo stanje: crvena označava neuspjeh, zelena uspjeh.
U ovom primjeru gumb je zelen, što znači da je cjevovod uspio.
Trčanje Jenkins cjevovod
Kliknite na Pokreni za pokretanje Jenkins cjevovod. Izgledat će otprilike ovako:
Gornji primjer gradi jednostavan program "helloworld.java". Pravi projekti povezuju daleko složenije cjevovode, kao što pokazuje detaljniji prikaz u nastavku.
⚠️ Napomena o verziji: Dodatak za prikaz Build Pipeline je stari način vizualizacije ulančanih slobodnih poslova; trenutna praksa definira isti tijek u JenkinsDatoteka. Plava Ocean više nije poboljšano.
Najbolje prakse korištenja Jenkins Cjevovod
Sedam navika održava cjevovod održivim:
- Koristite originalni Jenkins Cjevovod
- Razvijte svoj cjevovod kao kod
- Svaki rad koji nije povezan s postavljanjem u vašem cjevovodu trebao bi se odvijati unutar bloka faze.
- Svaki materijalni rad u cjevovodu mora se izvesti unutar bloka čvora.
- Ne koristite ulaz unutar bloka čvora.
- Nikada ne postavljajte varijable okruženja s globalnom varijablom env
- Zamotajte svoje unose u vremensko ograničenje













