Jenkins Pipeline oktatóanyag: JenkinsFile létrehozása (példa)
Mi az a Jenkins Pipeline?
Jenkins Pipeline a beépülő modulok kombinációja, amely támogatja a folyamatos szállítási folyamatok integrációját és megvalósítását. Bővíthető automatizálási szerverrel rendelkezik, amely egyszerű és összetett kézbesítési folyamatokat hoz létre kódként DSL-folyamaton keresztül. A Pipeline olyan események csoportja, amelyek sorozatban kapcsolódnak egymáshoz.
Mi az a folyamatos szállítási csővezeték? Hogyan működik?
A Jenkins-folyamatban minden munka vagy esemény legalább egy vagy több eseménytől függ.

A fenti kép egy folyamatos szállítási csővezetéket ábrázol Jenkinsben. Az állapotok egy csoportját tartalmazza: build, deploy, test and release. Ezek az események összefüggenek egymással. Minden állapotnak megvannak a maga eseményei, amelyek egy folyamatos szállítási folyamatnak nevezett szekvenciában működnek.
A folyamatos kézbesítési folyamat egy automatizált kifejezés, amely megjeleníti a szoftver verziókezeléshez szükséges beszerzési folyamatát. Így a szoftverben végrehajtott minden változtatás számos összetett folyamaton megy keresztül a megjelenésig. Ez magában foglalja a szoftver megbízható és megismételhető módon történő fejlesztését, valamint a beépített szoftver több szakaszon keresztüli előrehaladását is tesztelés és a telepítés.
Mi az a JenkinsFile?
A Jenkins-folyamatokat egy szöveges fájl segítségével lehet meghatározni JenkinsFile. A folyamatot kódként implementálhatja a JenkinsFile segítségével, és ez egy tartományspecifikus nyelv (DSL) használatával határozható meg. A JenkinsFile segítségével megírhatja a Jenkins-folyamat futtatásához szükséges lépéseket.
A használat előnyei JenkinsFile:
- Automatikusan létrehozhat folyamatokat az összes ághoz, és egyetlen lekérési kérelmet is végrehajthat JenkinsFile.
- A folyamatban lévő Jenkins-kódot áttekintheti
- Ellenőrizheti a Jenkins-csővezetéket
- Ez a folyamat egyetlen forrása, és több felhasználó módosíthatja.
A JenkinsFile webes felhasználói felülettel vagy Jenkins-fájllal definiálható.
Deklaratív versus parancsfájl-folyamat szintaxisa:
A Jenkins-fájl meghatározásához kétféle Jenkins-folyamat-szintaxist használnak.
- Nyilatkozatos
- Szkriptelt
Kijelentő:
A deklaratív csővezeték szintaxis egyszerű módot kínál a folyamatok létrehozására. Előre meghatározott hierarchiát tartalmaz a Jenkins-folyamatok létrehozásához. Lehetővé teszi a folyamatvégrehajtás minden aspektusának egyszerű, egyértelmű vezérlését.
Szkriptelt:
A scripted Jenkins pipeline a Jenkins mesteren fut egy könnyű végrehajtó segítségével. Nagyon kevés erőforrást használ fel a folyamat atomi parancsokká fordításához. Mind a deklaratív, mind a parancsfájl szintaxis különbözik egymástól, és teljesen másképpen határozzák meg őket.
Miért használja a Jenkin's Pipeline-t?
Jenkins nyitott folyamatos integrációs szerver amely képes támogatni a szoftverfejlesztési folyamatok automatizálását. A használati esetek segítségével több automatizálási feladatot is létrehozhat, és Jenkins-folyamatként futtathatja őket.
A következő okok miatt érdemes Jenkins csővezetéket használni:
- A Jenkins-folyamat olyan kódként van megvalósítva, amely lehetővé teszi több felhasználó számára a folyamat szerkesztését és végrehajtását.
- A csővezetékek robusztusak. Tehát ha a szerver váratlan újraindításon megy keresztül, a folyamat automatikusan folytatódik.
- Szüneteltetheti a folyamatot, és várakoztathatja a folytatásra, amíg a felhasználó nem válaszol.
- A Jenkins Pipelines nagy projekteket támogat. Futtathat több jobot, és akár egy ciklusban is használhat folyamatokat.
Jenkins Pipeline Concepts
kifejezés | Description |
---|---|
Csővezeték | A folyamat a folyamatos kézbesítéshez kód formájában adott utasítások halmaza, és a teljes összeállítási folyamathoz szükséges utasításokból áll. A folyamat segítségével létrehozhatja, tesztelheti és szállíthatja az alkalmazást. |
Csomópont | A gépet, amelyen Jenkins fut, csomópontnak nevezzük. A csomópontblokkot főként a parancsfájl-folyamat szintaxisában használják. |
Színpad | Egy szakaszblokk egy folyamatban lévő lépések sorozatát tartalmazza. Vagyis a felépítési, tesztelési és üzembe helyezési folyamatok egy szakaszban állnak össze. Általában egy szakasz blokkot használnak a Jenkins-folyamat megjelenítésére. |
Lépés | Egy lépés nem más, mint egyetlen feladat, amely egy meghatározott folyamatot hajt végre meghatározott időben. A csővezeték egy sor lépésből áll. |
Telepítse a Build Pipeline beépülő modult a Jenkinsben
Aktivitáskövető csővezetéket építeni plugin segítségével létrehozhat egy folyamatnézetet a bejövő és kimenő feladatokról, és létrehozhat olyan triggereket, amelyek kézi beavatkozást igényelnek.
Így telepítheti a csővezetéket építeni plugin a Jenkinsben:
1 lépés) A beépülő modul beállításai itt találhatók,
Jenkins kezelése > Beépülő modulok kezelése.
Ha már telepítette a bővítményt, az a telepített fül alatt látható.
2 lépés) Ha nincs korábban telepítve a bővítmény,
alatt jelenik meg Elérhető Tab.
Miután sikeresen telepítette a csővezetéket építeni a Jenkins beépülő moduljában, kövesse az alábbi lépéseket a Jenkins-folyamat létrehozásához:
Hogyan készítsünk Jenkins Pipeline-t
Miután bejelentkezett a Jenkins irányítópultjába:
1 lépés) Kattintson a "+" gombot a Jenkins irányítópultjának bal oldalán egy folyamat létrehozásához.
2 lépés)
- A rendszer kéri, hogy adjon nevet a folyamat nézetnek. Nevezzük majd "Guru99 Pipeline” a bemutató idejére.
- választ Csővezeték nézet létrehozása alatt lehetőségek
- Kattints ok
3 lépés) A következő oldalon további részletekre lesz szükség a Jenkins-folyamat konfigurálásához. Csak fogadja el az alapértelmezett beállításokat, és győződjön meg arról, hogy a beállítások közül az első feladatot választotta.
Kattints a Jelentkezem és azután OK.
Ez megmutatja a tétel mintafolyamat-nézetét, az alábbiak szerint:
Pipeline build futtatása
1 lépés) A folyamatépítés futtatásához először láncolnia kell a munkáit. Ehhez lépjen az első feladatához, és kattintson a konfigurálásra.
2 lépés) Most, alatt Triggerek építése, ellenőrizd a Építés más projektek megépítése után opciót.
Így létrejött egy lánc az összes munkájához.
3 lépés) Telepítse a Csővezeték nézet létrehozása plugin, ha még nincs telepítve.
4 lépés) Lépjen a Jenkins irányítópultjára, és hozzon létre egy nézetet a „+” gombot. Válaszd ki a Build Pipeline View lehetőség és kattintson OK.
5 lépés) Alatt Csővezeték nézet konfigurációja, keresse meg Csővezeték áramlás.
Alatt Csővezeték áramlás, válassza ki a futtatni kívánt kezdeti feladatot. Most válassza ki azt a munkát, amely más munkákhoz láncol, ahogy az ábra mutatja 1 lépés és a 2 lépés.
Itt válogattunk Guru99 projekt 1 mint a kezdeti munka, más munkákhoz láncolva. Így a feladatok egyenként futnak majd a folyamatban.
Amikor a Jenkins folyamat fut, a piros és zöld állapotszimbólumok segítségével ellenőrizheti állapotát. A piros azt jelenti, hogy a csővezeték meghibásodott, a zöld pedig a sikert.
Ebben a Jenkins-csővezeték példában azt látjuk, hogy a gomb zöld. Ezért a csővezeték sikeres.
Jenkins csővezeték fut
Kattints a futás hogy vezesse a Jenkins-csővezetéket. Valahogy így fog kinézni:
A fenti Jenkins-folyamatszkript példában egy egyszerű „helloworld.java” programot mutatunk be. A valós idejű projektekben azonban Ön lesz a felelős a Jenkins-i komplex csővezetékek létrehozásáért és megépítéséért. Lásd alább a csővezeték minta nézetét.
A Jenkins Pipeline bevált gyakorlatai:
- Használja az eredeti Jenkins Pipeline-t
- 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 csomópontblokkon 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