Jenkinsi õpetus | Pidev integreerimine Jenkinsi abil | Edureka



Jenkinsi juhendaja on Jenkinsi ajaveebisarja teine ​​ajaveeb. Selles ajaveebis räägitakse Jenkinsi hajutatud arhitektuurist ja sellest, kuidas Jenkinsi abil ehitada.

Jenkinsi õpetus

Jenkins on üks olulisemaid tööriistu aastal . Loodan, et olete mu eelmist blogi lugenud . Selles Jenkinsi õpetuse ajaveebis keskendun Jenkinsi arhitektuurile ja Jenkins ehitab torujuhet koos sellega ja näitan teile, kuidas luua Jenkinsis järge.

Enne Jenkinsi juhendajaga jätkamist on eelmise ajaveebi peamised võimalused:





  • Jenkinsit kasutatakse kõigi DevOps-etappide integreerimiseks pistikprogrammide abil.
  • Tavaliselt kasutatavad Jenkinsi pistikprogrammid on Git, Amazon EC2, Maven 2 projekt, HTML-i väljaandja jne.
  • Jenkinsil on tublisti üle 1000 pistikprogrammi ja147 000 aktiivset installi koos üle miljoni kasutaja kogu maailmas.
  • Pideva integreerimisega kõik lähtekoodis tehtud muudatusedonehitatud. See täidab ka muid funktsioone,mis sõltub pideva integreerimise jaoks kasutatavast tööriistast.
  • Nokia läks öiselt ehitamiselt üle pidevale integreerimisele.
  • Protsessil enne pidevat integratsiooni oli palju vigu. Seetõttu ei olnud tarkvara tarnimine aeglane, vaid ka tarkvara kvaliteet ei vastanud sellele. Arendajatel oli ka vigade leidmisel ja parandamisel raske aeg.
  • Jenkinsiga pidev integreerimine sai nendest puudustest jagu, käivitades pidevalt lähtekoodis tehtud muudatuste koopia ja testi.

Praegu on õige aeg mõista Jenkinsi arhitektuuri.

Jenkinsi arhitektuur

Vaatame üle iseseisva Jenkinsi arhitektuuri, mida olen teile selgitanud , allpool skeemil on kujutatud sama.



Jenkinsi iseseisev arhitektuur - mis on Jenkins - Edureka

Sellest ühest Jenkinsi serverist ei piisanud teatud nõuete täitmiseks, näiteks:

  • Mõnikord võib teie järkude testimiseks vaja minna mitut erinevat keskkonda. Seda ei saa teha üks Jenkinsi server.
  • Kui suuremaid ja raskemaid projekte ehitatakse regulaarselt, ei saa üks Jenkinsi server lihtsalt kogu koormusega hakkama.

Eespool nimetatud vajaduste rahuldamiseks võeti kasutusele Jenkinsi hajutatud arhitektuur.



Jenkins Distributed Architecture

Jenkins kasutab hajutatud järkude haldamiseks Master-Slave arhitektuuri. Selles arhitektuuris suhtlevad põhi- ja alamühendused TCP / IP-protokolli kaudu.

Jenkins Master

Teie peamine Jenkinsi server on Master. Meistri ülesanne on tegeleda:

  • Ehitada töökohti.
  • Lähetamine ehitab orjadele tegeliku täitmise.
  • Jälgige orje (viies neid vajadusel võrgu- ja võrguühenduseta).
  • Ehitustulemuste registreerimine ja esitamine.
  • Jenkinsi peaproov saab ehituskohti ka otse täita.

Jenkinsi ori

Slave on Java käivitatav fail, mis töötab kaugarvutil. Jenkinsi orjade omadused on järgmised:

  • See kuuleb Jenkins Master'i instantsilt päringuid.
  • Orjad saavad töötada mitmesugustes opsüsteemides.
  • Orja ülesanne on teha nii, nagu kästakse, mis hõlmab kapteni saadetud ehitustööde teostamist.
  • Võite konfigureerida projekti nii, et see töötaks alati kindlas orjamasinas või teatud tüüpi orjamasinas, või lasta Jenkinsil valida järgmine saadaval olev ori.

Allolev skeem on iseenesestmõistetav. See koosneb Jenkins Masterist, kes haldab kolme Jenkins Slave'i.

Vaatame nüüd näidet, kus Jenkinsit kasutatakse testimiseks erinevates keskkondades, näiteks: Ubuntu, MAC, Windows jne.

Allolev diagramm tähistab sama:

Ülaltoodud pildil täidetakse järgmisi funktsioone:

  • Jenkins kontrollib Giti hoidlat korrapäraste ajavahemike järel lähtekoodis tehtud muudatuste suhtes.
  • Iga järk nõuab erinevat testimiskeskkonda, mis pole ühe Jenkinsi serveri jaoks võimalik. Testimise läbiviimiseks erinevates keskkondades kasutab Jenkins erinevaid orje, nagu joonisel näidatud.
  • Jenkins Master palub neil orjadel testimist ja testiaruannete loomist.

Jenkins ehitab torujuhtme

Seda kasutatakse selleks, et teada saada, millist ülesannet Jenkins praegu täidab. Sageli teevad mitu arendajat korraga mitu erinevat muudatust, seega on kasulik teada, millist muudatust testitakse või milline muudatus istub järjekorras või milline järk on katki. Siin tuleb torujuhe pildile. Jenkinsi torujuhe annab teile ülevaate testide tegemise kohast. Ehitustorustikus on ehitis tervikuna jaotatud osadeks, näiteks ühikutest, vastuvõtukatse, pakendamise, aruandluse ja kasutuselevõtu etapid. Gaasijuhtme faase saab teostada järjestikku või paralleelselt ning kui üks faas õnnestub, liigub see automaatselt järgmisse etappi (sellest tuleneb ka nime „torujuhe” asjakohasus). Alloleval pildil on näha, kuidas näeb välja mitme ehitusega torujuhe.

Loodetavasti olete teoreetilistest mõistetest aru saanud. Nüüd olgem käed külge lustinud.

Loon Jenkinsis uue töökoha, see on a Vabatehnika projekt . Siiski on saadaval veel 3 võimalust. Vaatame Jenkinsis saadaolevate ehitustööde tüüpe.

Vabatehnika projekt:

Vabastiili ehitamise töökohad on üldotstarbelised ehitustööd, mis annab maksimaalse paindlikkuse.Vabastiili koostamise töö on kõige paindlikum ja seadistatavam valik ning seda saab kasutada igat tüüpi projekti jaoks. Seadistamine on suhteliselt lihtne ja paljud siin konfigureeritavad võimalused ilmuvad ka teistes ehitustöödes.

java keeles viitega edasi
Mitmekonfiguratsiooniline töö:

'Mitmekonfiguratsiooniline projekt' (viidatud ka kui 'maatriksprojekt') võimaldab teil sama ehitustööd käitada erinevates keskkondades. Seda kasutatakse rakenduse testimiseks erinevates keskkondades, erinevate andmebaasidega või isegi erinevatel ehitusmasinatel.

Välise töö jälgimine:

Koostamistöö „Välise töö jälgimine” võimaldab teil jälgida mitteinteraktiivseid protsesse, näiteks croni töid.

Maveni projekt:

Projekt „maven2 / 3” on spetsiaalselt Maveni projektidele kohandatud ehitustöö. Jenkins mõistab Maveni pom-faile ja projektistruktuure ning saab pom-failist kogutud teavet kasutada projekti seadistamiseks vajaliku töö vähendamiseks.

Siin on video Jenkinsi õpetuse kohta, et Jenkinsit paremini mõista. Vaadake seda Jenkinsi juhendavat videot.

kuidas Java-s tüüpvormistada

Jenkinsiga alustamine | Jenkinsi ja DevOpsi õpetus | Jenkins algajatele | Edureka

Ehitise loomine Jenkinsiga

Samm 1: Valige Jenkinsi liidese kodust Uus üksus.

2. samm: Sisestage nimi ja valige Freestyle projekt .

3. samm: Sellel järgmisel lehel saate määrata töö konfiguratsiooni. Nagu te kiiresti märkate, on uue projekti loomisel saadaval mitmeid seadeid.Sellel konfiguratsioonilehel on teil ka võimalus Lisa ehitamisetapp teha täiendavaid toiminguid, näiteks skriptide käitamine. Ma täidan shelliskripti.

See annab teile tekstikasti, kuhu saate lisada kõik vajalikud käsklused. Skriptide abil saate käivitada mitmesuguseid ülesandeid, näiteks serveri hooldus, versioonihaldus, süsteemi sätete lugemine jne. Ma kasutan seda jaotist lihtsa skripti käitamiseks.

4. samm: Salvestage projekt ja teid suunatakse projekti ülevaatuse lehele. Siin näete teavet projekti kohta, sealhulgas selle ehitatud ajalugu.

5. samm: Klõpsake nuppu Ehitage kohe vasakul küljel ehituse alustamiseks.

6. samm: Lisateabe nägemiseks klõpsake järgu koostamise ajaloo piirkonnas sellel järjel, seejärel suunatakse teid lehele, kus on ülevaade järgu teabest.

7. samm: The Konsooli väljund sellel lehel olev link on eriti kasulik töö tulemuste üksikasjalikuks uurimiseks.

8. samm: Kui naasete Jenkinsi koju, näete ülevaadet kõigist projektidest ja nende teavet, sealhulgas olekut.

Ehituse olekut tähistatakse kahel viisil, ilmaikooni ja värvilise palliga. Ilmaikoon on eriti kasulik, kuna see näitab mitme pildi ühe pildi salvestust.

Nagu ülaltoodud pildil näha, tähistab päike, et kõik minu ehitused olid edukad. Palli värv annab meile selle konkreetse ehitise staatuse, ülaltoodud pildil on palli värv sinine, mis tähendab, et see konkreetne ülesehitus oli edukas.

Selles Jenkinsi õpetuses tõin just sissejuhatava näite. Oma järgmises ajaveebis näitan teile, kuidas Jenkinsi abil GitHubi hoidlast koodi tõmmata ja ehitada.

Kui olete selle leidnud Jenkinsi õpetus asjakohane, vaadake Edureka, usaldusväärne veebiõppeettevõte, mille võrgustik hõlmab üle 250 000 rahuloleva õppija, levinud üle kogu maailma. Edureka DevOpsi sertifitseerimiskoolitus aitab õppijatel omandada teadmisi mitmesuguste DevOpsi protsesside ja tööriistade, näiteks Nukuteabe, Jenkinsi, Nagiosi ja GIT-i kohta SDLC mitmete sammude automatiseerimiseks.

Kas teil on meile küsimus? Palun mainige seda kommentaaride jaotises ja võtame teiega ühendust.