Jenkins Csővezeték-oktatóanyag: Létrehozás JenkinsFájl (Példa)
⚡ Okos összefoglaló
Jenkins A folyamatláncok egyetlen rendezett sorozatban építik fel, tesztelik és telepítik a feladatokat, amelyek kódként futnak. JenkinsA projekt mellett véglegesített fájl ezt a szekvenciát egy áttekinthető, verziózott kézbesítési definícióvá alakítja.
Mi a Jenkins Csővezeték?
Jenkins A Pipeline olyan bővítmények kombinációja, amelyek támogatják az integrációt és a megvalósítást. folyamatos szállítóvezetékekEz egy bővíthető automatizálási szerver egyszerű és összetett kézbesítési folyamatok létrehozásához kódként a DSL pipeline-on keresztül. A pipeline egy sorozatban összekapcsolt események csoportja.
Mi az a folyamatos szállítási csővezeték? Hogyan működik?
egy Jenkins A folyamatban minden feladatnak vagy eseménynek valamilyen függősége van legalább egy vagy több eseménytől, ahogy az alábbi ábra is mutatja.

A fenti kép egy folyamatos szállítási folyamatot ábrázol. Jenkins, amely build (építés), deploy (telepítés), test (teszt) és release (kiadás) nevű állapotokból áll. Minden állapotnak megvannak a saját eseményei, amelyek sorrendben futnak.
Egy folyamatos kézbesítési folyamat automatikusan lebonyolítja ezt a folyamatot, a szoftvert a verziókövetéstől a kiadásig egyetlen ismétlődő buildsorozaton keresztül szállítva. tesztelés és a telepítési szakaszok.
Mi az a JenkinsFájl?
Jenkins a csővezetékek egy szövegfájlban definiálhatók, melynek neve JenkinsFájl. Ez a fájl egy adott domainhez tartozó nyelven (DSL) írt kódként fejezi ki a folyamatot, és tartalmazza a folyamat futtatásához szükséges összes lépést.
A használat előnyei JenkinsA fájlok a következők:
- egy JenkinsA fájl minden ághoz létrehozhat folyamatokat, és végrehajthat pull requesteket.
- Áttekintheti a Jenkins kód a folyamatban
- Auditálhatja a Jenkins csővezeték
- Ez a folyamat egyetlen forrása, és több felhasználó módosíthatja.
Egy csővezeték definiálható a Jenkins webes felhasználói felületen vagy egy JenkinsVerziókövetésre véglegesített fájl. Egy minimális deklaratív fájlnak rögzített alakja van – egy folyamatblokk, egy ügynök és fázisonként egy szakaszt tartalmazó szakaszok.
pipeline { agent any stages { stage('Build') { steps { echo 'Building' } } stage('Test') { steps { echo 'Testing' } } stage('Deploy') { steps { echo 'Deploying' } } } }
A repository root-mappájába mentés után a folyamat verzióját a kóddal kell végrehajtani.
Deklaratív és szkriptelt folyamatszintaxis
Kétféle típus létezik Jenkins a definiálásához használt folyamatszintaxis JenkinsFájlt.
- Nyilatkozatos
- Szkriptelt
Nyilatkozatos
A deklaratív folyamatszintaxis az egyszerűbb megoldás. Egy előre meghatározott hierarchiát követ, és továbbra is egyszerűen vezérli a folyamat végrehajtásának minden aspektusát.
Szkriptelt
Szkriptelt Jenkins a csővezeték fut a Jenkins vezérlőt egy könnyű végrehajtón keresztül, nagyon kevés erőforrást használva a folyamat atomi parancsokká alakításához. A kettő meglehetősen eltérően van megírva, ezért válasszon egyet JenkinsFájlt.
⚠️ Jegyzet: Jenkins most felhívja a mester a ellenőr.
Miért használja Jenkins Csővezeték?
Jenkins egy nyitott folyamatos integrációs szerver ami automatizálja szoftverfejlesztési folyamatokTöbbet is létrehozhat automatizálási munkák a használati eseteidből, és egyetlen folyamatként futtathatod őket.
Íme az okok, amiért érdemes használni Jenkins csővezeték:
- A folyamatot kódként valósítják meg, így több felhasználó is szerkesztheti és végrehajthatja.
- A folyamatok robusztusak: ha a szerver váratlanul újraindul, a folyamat automatikusan folytatódik.
- Szüneteltetheti a folyamatot, és addig tarthatja, amíg a felhasználó nem ad bemenetet.
- A csővezetékek nagy projekteket támogatnak: több feladatot futtatnak, sőt, akár ciklusokban is használhatják a csővezetékeket.
Jenkins Csővezeték Concepts
Négy kifejezés ismétlődik minden Jenkinsfájl:
| kifejezés | Leírás |
|---|---|
| Csővezeték | Egy kódként írt utasításkészlet, amely lefedi a folyamatos szállítás érdekében a teljes build folyamatot. Egy folyamattal buildelheted, tesztelheted és leszállíthatod az alkalmazást. |
| Csomópont | A gép, amelyen Jenkins A futtatásokat csomópontnak nevezzük. A csomópont blokkot főként szkriptelt folyamatfolyamat szintaxisban használják. |
| Színpad | Egy fázisblokk lépések sorozatát tartalmazza. A build, tesztelés és telepítési folyamatok mindegyike egy fázisban fog össze, amelyet a folyamat nézet is megjelenít. |
| Lépés | Egyetlen feladat, amely egy adott folyamatot hajt végre egy meghatározott időpontban. A folyamatfolyamat lépések sorozata. |
Telepítse a Build Pipeline bővítményt Jenkins
A build pipeline bővítmény létrehozza a bejövő és kimenő feladatok folyamatnézetét, és manuális beavatkozási triggereket ad hozzá.
Telepítse a következőképpen:
Step 1) A bővítmény beállításait a következő címen találja: kezel Jenkins > Bővítmények kezelése, lásd lent.
⚠️ Verzió megjegyzés: jelenlegi Jenkins kiadások címkéje ez a képernyő kezel Jenkins → Bővítmények; a fülek az itt leírtak szerint viselkednek.
Ha már telepítette a bővítményt, az a telepített fül alatt látható.
Step 2) Ha a bővítmény még nincs telepítve, akkor az Elérhető fül alatt jelenik meg.
A telepített bővítménnyel:
Hogyan lehet létrehozni Jenkins Csővezeték
Miután bejelentkezett a saját fiókjába Jenkins műszerfal:
Step 1) Kattintson a bal oldalon található „+” gombra Jenkins irányítópult egy folyamat létrehozásához.
Step 2) Töltse ki az új nézet párbeszédablakot:
- Adj nevet a folyamatnézetnek. Mi a következőnek fogjuk hívni:Guru99 Pipeline” ehhez a demóhoz.
- Válassza a Folyamatnézet létrehozása lehetőséget a Beállítások alatt
- Kattintson az OK gombra, ahogy az alább látható.
Step 3) A következő oldal további konfigurációs részleteket kér. Fogadja el az alapértelmezett beállításokat, és győződjön meg róla, hogy a beállítások alatt az első feladatot választotta.
Kattintson az Alkalmaz, majd az OK gombra.
Ezután megjelenik az elem minta folyamatábrája:
Pipeline build futtatása
Step 1) Először láncold össze a feladataidat: nyisd meg az első feladatodat, és kattints a konfigurálás gombra.
Step 2) Most a Build Triggerek alatt jelölje be a Build a többi projekt felépítése után lehetőséget.
Most már létezik egy lánc az összes munkádhoz.
Step 3) Telepítse a Build Pipeline nézet bővítményt, ha még nincs telepítve.
Step 4) A Jenkins irányítópulton hozzon létre egy nézetet a „+” gombbal, válassza a Folyamatnézet létrehozása lehetőséget, majd kattintson az OK gombra.
Step 5) A Folyószám nézet konfigurációja alatt keresse meg a Folyószám folyamata elemet.
A Folyamatfolyamat alatt válassza ki a futtatni kívánt kezdeti feladatot – azt a feladatot, amely az 1. és 2. lépésben a többihez van láncolva.
Guru99 Az 1. projektet itt választottuk ki kezdeti feladatként, így a láncolt feladatok egyesével futnak.
Amíg a folyamat fut, piros és zöld szimbólumok jelzik az állapotát: a piros a sikertelenséget, a zöld a sikerességet jelenti.
Ebben a példában a gomb zöld, tehát a folyamat sikeresen befejeződött.
futás Jenkins csővezeték
Kattintson a Futtatás gombra a futtatásához Jenkins folyamat. Valahogy így fog kinézni:
A fenti példa egy egyszerű „helloworld.java” programot épít. A valódi projektek sokkal összetettebb folyamatokat láncolnak össze, ahogy az alábbi teljes nézet is mutatja.
⚠️ Verzió megjegyzés: A Build Pipeline nézetbővítmény a láncolt szabad stílusú feladatok megjelenítésének hagyományos módja; a jelenlegi gyakorlat ugyanazt a folyamatot definiálja egy JenkinsFájl. Kék Ocean már nincs továbbfejlesztve.
Bevált gyakorlatok a következő használatával: Jenkins Csővezeték
Hét szokás teszi karbantarthatóvá a csővezetéket:
- Használd az eredetit Jenkins Csővezeték
- Fejlessze a folyamatot kódként
- A folyamatban lévő minden nem beállítási munkának egy szakaszblokkon belül kell történnie.
- A csővezetékben végzett bármilyen anyagmunkát egy csomóponti blokkon belül kell elvégezni.
- Ne használjon bemenetet egy csomópont blokkon belül.
- Soha ne állítson be környezeti változókat env globális változóval
- Csomagolja be a bemeneteket egy időkorlátba













