Cath Jenkins agus GitLab CI/CD

Le deich mbliana anuas, tá dul chun cinn suntasach déanta maidir le forbairt uirlisí do chomhtháthú leanúnach (Comhtháthú Leanúnach, CI) agus imscaradh leanúnach (Seachadadh Leanúnach, CD). Mar thoradh ar fhorbairt teicneolaíochtaí chun forbairt agus oibriú bogearraí a chomhtháthú (Oibríochtaí Forbartha, DevOps) tá méadú tapa ar an éileamh ar uirlisí CI / CD. Tá na réitigh atá ann cheana féin á bhfeabhsú i gcónaí, ag iarraidh coimeád suas leis na huaire, scaoiltear a gcuid leaganacha nua, i saol na bogearraí dearbhaithe cáilíochta (Dearbhú Cáilíochta, QA), tá go leor táirgí nua le feiceáil i gcónaí. Le saibhreas rogha den sórt sin, ní tasc éasca é an uirlis cheart a roghnú.

Cath Jenkins agus GitLab CI/CD

I measc na n-uirlisí CI / CD go léir atá ann cheana féin, tá dhá thionscadal ar fiú aird a thabhairt orthu go cinnte do dhuine atá ag lorg rud éigin ón réimse seo. Táimid ag caint faoi Jenkins agus an uirlis GitLab CI / CD, atá mar chuid den ardán GitLab. Tá níos mó ag Jenkins ná 16000 réaltaí ar GitHub. Scóráil stór GitLab ar gitlab.com beagán níos mó 2000 réaltaí. Má dhéanaimid comparáid idir an tóir a bhí ar na stórtha, is léir gur scóráil Jenkins 8 n-uaire níos mó réaltaí ná an t-ardán, lena n-áirítear GitLab CI / CD. Ach nuair a roghnaíonn tú uirlis CI / CD, tá sé seo i bhfad ón táscaire amháin ar chóir duit aird a thabhairt air. Tá neart daoine eile ann, agus míníonn sé seo cén fáth go bhfuil Jenkins agus GitLab CI / CD an-ghar dá chéile i go leor comparáidí.

Tóg, mar shampla, sonraí ón ardán G2, a bhailíonn léirmheasanna ar raon leathan táirgí agus na rátálacha a thugann úsáideoirí dóibh. Seo é an meán-rátáil Jenkins, bunaithe ar 288 léirmheas, ná 4,3 réalta. Ó ó GitLab tá 270 léirmheas ann, is é an meán-rátáil don uirlis seo ná 4,4 réalta. Ní bheidh aon dul amú orainn a rá go bhfuil Jenkins agus GitLab CI/CD in iomaíocht lena chéile ar théarmaí comhionanna. Tá sé suimiúil a thabhairt faoi deara go raibh an chuma ar an tionscadal Jenkins i 2011 agus ó shin i leith tá sé ina uirlis is fearr leat do thástálaithe. Ach ag an am céanna, tá an tionscadal GitLab CI / CD, a seoladh i 2014, tar éis a seasamh a ghlacadh, an-ard, a bhuíochas leis na gnéithe chun cinn a thairgeann an t-ardán seo.

Má labhairt linn faoi an tóir a bhí ar Jenkins i gcomparáid le hardáin eile dá leithéid, tugaimid faoi deara, tar éis dúinn alt a fhoilsiú i gcomparáid leis na hardáin Travis CI agus Jenkins, shocraigh suirbhé. Ghlac 85 úsáideoir páirt ann. Iarradh ar fhreagróirí an uirlis CI/CD is mó a thaitníonn leo a roghnú. Roghnaigh 79% Jenkins, roghnaigh 5% Travis CI, agus léirigh 16% gur fearr leo uirlisí eile.

Cath Jenkins agus GitLab CI/CD
Torthaí vótaíochta

I measc uirlisí CI/CD eile, is minice a luadh GitLab CI/CD.

Má tá tú dáiríre faoi DevOps, ní mór duit na huirlisí cuí a roghnú go cúramach, ag cur san áireamh sonraí an tionscadail, a bhuiséad agus riachtanais eile. Chun cabhrú leat an rogha ceart a dhéanamh, táimid chun athbhreithniú a dhéanamh ar Jenkins agus GitLab CI/CD. Táthar ag súil go gcabhróidh sé seo leat an rogha ceart a dhéanamh.

Réamhrá le Jenkins

Cath Jenkins agus GitLab CI/CD
Jenkins is uirlis sholúbtha CI/CD a bhfuil clú agus cáil uirthi atá deartha chun go leor tascanna a bhaineann le tionscadail bogearraí a uathoibriú. Tá Jenkins scríofa go hiomlán i Java agus scaoiltear é faoi cheadúnas MIT. Tá sraith chumhachtach gnéithe aige atá dírithe ar na tascanna a bhaineann le bogearraí a thógáil, a thástáil, a imscaradh, a chomhtháthú agus a scaoileadh a uathoibriú. Is féidir an uirlis seo a úsáid ar chórais oibriúcháin éagsúla. Ina measc tá macOS, Windows, agus go leor dáiltí Linux mar OpenSUSE, Ubuntu, agus Red Hat. Tá pacáistí suiteála do Jenkins atá deartha le haghaidh OSes éagsúla, is féidir an uirlis seo a shuiteáil ar Docker agus ar aon chóras a bhfuil JRE (Java Runtime Environment).

Chruthaigh na forbróirí Jenkins tionscadal eile, Jenkins X, atá deartha chun oibriú i dtimpeallacht Kubernetes. Comhtháthaíonn Jenkins X Helm, Jenkins CI / CD Server, Kubernetes, agus uirlisí eile chun píblínte CI / CD a thógáil a leanann dea-chleachtais DevOps. Mar shampla, úsáidtear GitOps anseo.

Is féidir cur leis an státchiste na buntáistí a bhaineann le Jenkins go bhfuil a scripteanna struchtúrtha go han-mhaith, intuigthe, agus éasca le léamh. Tá thart ar 1000 breiseán cruthaithe ag foireann Jenkins atá dírithe ar idirghníomhaíocht Jenkins a eagrú le raon leathan teicneolaíochtaí. Is féidir le scripteanna córais fíordheimhnithe a úsáid, rud a ligeann duit, mar shampla, ceangal le córais dúnta éagsúla.

Le linn oibriú píblíne Jenkins, is féidir leat a fheiceáil cad a tharlaíonn ag gach céim, cibé an bhfuil céimeanna áirithe oibre críochnaithe go rathúil nó nach bhfuil. Is féidir leat féachaint ar seo go léir, áfach, gan úsáid a bhaint as comhéadan grafach áirithe, ach úsáid a bhaint as cumais an teirminéil.

Gnéithe de Jenkins

I measc gnéithe aitheanta Jenkins tá éascaíocht socraithe, ardleibhéal uathoibrithe oibríochtaí éagsúla, agus doiciméadú den scoth. Má labhairt linn faoi thascanna DevOps a réiteach, ansin meastar gur uirlis an-iontaofa é Jenkins anseo, agus úsáid á baint as sin, mar riail, ní dhéanann sé ciall monatóireacht ghéar a dhéanamh ar an bpróiseas iomlán próiseála tionscadail. Ní hé seo an cás le huirlisí CI/CD eile. Labhraímis faoi chuid de na gnéithe is tábhachtaí de Jenkins.

▍1. Tacaíocht il-ardán saor in aisce, foinse oscailte

Is féidir le Jenkins rith ar ardáin macOS, Windows agus Linux. Féadfaidh sé feidhmiú freisin i dtimpeallacht Docker, rud a ligeann duit cur i gcrích aonfhoirmeach agus tapa tascanna uathoibrithe a eagrú. Is féidir leis an uirlis seo a reáchtáil freisin mar servlet i gcoimeádáin Java-chumas ar nós Apache Tomcat agus GlassFish. Suiteáil Jenkins go cáilíochtúil doiciméadaithe.

▍2. Forbraíodh éiceachóras breiseán

Is cosúil go bhfuil éiceachóras breiseán Jenkins i bhfad níos aibí ná éiceachórais breiseán uirlisí CI/CD eile. Faoi láthair tá breis is 1500 breiseán do Jenkins. Tá na forlíontáin seo dírithe ar raon leathan tascanna a réiteach, agus lena gcabhair is féidir leat tionscadail éagsúla a uathoibriú. Ciallaíonn an saibhreas breiseán saor in aisce a roghnaíonn tú, má tá Jenkins á úsáid agat, ní gá duit forlíontáin íoctha daor a cheannach. Tá féidearthacht ann comhtháthú Jenkins le go leor uirlisí DevOps.

▍3. Suiteáil agus socrú éasca

Tá Jenkins sách éasca a shuiteáil agus a chumrú. Ag an am céanna, tá an próiseas chun an córas a nuashonrú an-áisiúil freisin. Anseo, arís, is fiú cáilíocht an doiciméid a lua, ós rud é gur féidir leat freagraí a fháil ar éagsúlacht na gceisteanna a bhaineann le suiteáil agus cumraíocht Jenkins.

▍4. Pobal cairdiúil

Mar a luadh cheana, is tionscadal foinse oscailte é Jenkins, a bhfuil líon mór breiseán san áireamh ina éiceachóras. D'fhorbair pobal mór úsáideoirí agus forbróirí timpeall ar Jenkins chun cabhrú leis an tionscadal a fhorbairt. Tá an pobal ar cheann de na fachtóirí a thiomáineann forbairt Jenkins.

▍5. Infhaighteacht REST API

Agus tú ag obair le Jenkins, is féidir leat an API REST a úsáid, a leathnaíonn cumais an chórais. Cuirtear API le haghaidh cianrochtain ar an gcóras i láthair i dtrí leagan: XML, JSON le tacaíocht JSONP, Python. Anseo Leathanach doiciméid a chlúdaíonn sonraí ar oibriú leis an Jenkins REST API....

▍6. Tacaíocht do chur i gcrích comhthreomhar tascanna

Tacaíonn Jenkins le comhthreomharú tascanna DevOps. Is féidir é a chomhtháthú go héasca le huirlisí ábhartha agus fógraí a fháil faoi thorthaí tascanna. Is féidir tástáil cód a luathú trí thógáil comhthreomhar den tionscadal a eagrú ag baint úsáide as meaisíní fíorúla éagsúla.

▍7. Tacaíocht d’obair i dtimpeallachtaí dáilte

Ligeann Jenkins duit foirgnimh dháilte a eagrú ag baint úsáide as ríomhairí iolracha. Tá an ghné seo infheidhme i dtionscadail mhóra agus úsáideann sé scéim oibre, dá réir a bhfuil máistir freastalaí Jenkins amháin agus roinnt meaisíní sclábhaithe. Is féidir meaisíní daor a úsáid freisin i gcásanna ina bhfuil sé riachtanach tástáil tionscadail a eagrú i dtimpeallachtaí éagsúla. Leagann na gnéithe seo Jenkins amach ó thionscadail eile dá samhail.

Réamhrá ar GitLab

Cath Jenkins agus GitLab CI/CD
GitLab CI/CD ar cheann de na huirlisí DevOps is nuaí agus is iontaí. Tá an uirlis foinse oscailte saor in aisce seo ionsuite i gcóras rialaithe leagan GitLab. Tá leagan pobail ag ardán GitLab, tacaíonn sé le bainistíocht stórtha, uirlisí rianaithe eisiúint, eagraíocht athbhreithnithe cód, meicníochtaí atá dírithe ar dhoiciméadú. Is féidir le cuideachtaí GitLab a shuiteáil go háitiúil, agus é á nascadh le freastalaithe Active Directory agus LDAP le haghaidh údarú agus fíordheimhniú slán úsáideora.

Anseo Físeán teagaisc chun cabhrú leat foghlaim conas píblínte CI/CD a chruthú ag úsáid cumais CI/CD GitLab.

Eisíodh GitLab CI/CD ar dtús mar thionscadal aonair, ach in 2015 rinneadh an tsraith uirlisí seo a chomhtháthú le GitLab 8.0. Is féidir le freastalaí GitLab CI/CD amháin tacú le breis agus 25000 úsáideoir. Bunaithe ar fhreastalaithe den sórt sin, is féidir leat córais a chruthú atá ar fáil go mór.

Tá GitLab CI/CD agus an príomhthionscadal GitLab scríofa in Ruby and Go. Scaoiltear iad faoin gceadúnas MIT. Tacaíonn GitLab CI/CD, chomh maith leis na gnáthghnéithe d’uirlisí CI/CD, le gnéithe breise a bhaineann, mar shampla, le sceidealú oibre.

Tá sé an-éasca GitLab CI/CD a chomhtháthú i dtionscadal. Agus GitLab CI/CD á n-úsáid, roinntear an próiseas próiseála cód tionscadail ina chéimeanna, agus is féidir roinnt tascanna a dhéanamh in ord áirithe i ngach ceann díobh. Is féidir tascanna a mhionchoigeartú.

Is féidir tascanna a reáchtáil go comhthreomhar. Tar éis seicheamh na gcéimeanna agus na dtascanna a shocrú, tá an phíblíne CI/CD réidh le dul. Is féidir leat monatóireacht a dhéanamh ar a dhul chun cinn trí mhonatóireacht a dhéanamh ar stádas na dtascanna. Mar thoradh air sin, tá sé an-áisiúil úsáid a bhaint as GitLab CI / CD, b'fhéidir níos áisiúla ná uirlisí eile dá samhail.

Gnéithe de GitLab CI/CD agus GitLab

Tá GitLab CI/CD ar cheann de na huirlisí DevOps is coitianta. Tá doiciméadú ardchaighdeáin idirdhealú ag an tionscadal, tá a ghnéithe éasca agus áisiúil le húsáid. Mura bhfuil tú eolach go fóill ar GitLab CI/CD, tabharfaidh an liosta seo a leanas de ghnéithe na huirlise seo smaoineamh ginearálta duit ar cad is féidir leat a bheith ag súil uaidh. Ba chóir a thabhairt faoi deara go bhfuil go leor de na gnéithe seo bainteach leis an ardán GitLab féin, ina bhfuil GitLab CI / CD comhtháite.

▍1. Éileamh

Uirlis réasúnta nua is ea GitLab CI/CD a baineadh úsáid fhorleathan as. Is mall a d'éirigh GitLab CI/CD ina uirlis CI/CD a bhfuil an-tóir uirthi a úsáidtear le haghaidh tástála uathoibrithe agus úsáid bogearraí. Tá sé simplí a chur ar bun. Is uirlis CI/CD saor in aisce é freisin atá ionsuite in ardán GitLab.

▍2. Tacaíocht do GitLab Pages agus Jekyll

Is gineadóir suíomh statach é Jekyll is féidir a úsáid laistigh den chóras GitLab Pages chun láithreáin a chruthú bunaithe ar stórtha GitLab. Glacann an córas na bunábhair agus gineann sé suíomh statach réidh bunaithe orthu. Is féidir leat cuma agus gnéithe suíomhanna den sórt sin a rialú trí eagarthóireacht a dhéanamh ar an gcomhad _config.yml, in úsáid ag Jekyll.

▍3. Cumais pleanála tionscadail

A bhuíochas leis an gcumas céimeanna na dtionscadal a phleanáil, méadaítear áisiúlacht rianaithe fadhbanna agus a ngrúpaí. Ligeann sé seo duit eagrú na hoibre ar thionscadail a bhainistiú, a gcur chun feidhme a phleanáil ar dháta faoi leith.

▍4. Scálú uathoibríoch ar reathaithe CI

A bhuí le scálú uathoibríoch na reathaithe atá freagrach as tascanna sonracha a chomhlíonadh, is féidir leat go leor a shábháil ar an gcostas a bhaineann le hacmhainní freastalaí a fháil ar cíos. Tá sé seo thar a bheith tábhachtach, go háirithe nuair a thagann sé chuig timpeallachtaí ina ndéantar tástáil ar thionscadail ag an am céanna. Ina theannta sin, tá sé seo tábhachtach do thionscadail mhóra ina bhfuil roinnt stórtha.

▍5. Uirlisí rianaithe eisiúint

Tá cumais rianaithe saincheisteanna cumhachtacha GitLab tar éis go leor tionscadal foinse oscailte a threorú chun an t-ardán a úsáid. Ceadaíonn GitLab CI/CD tástáil comhthreomhar a dhéanamh ar bhrainsí cód éagsúla. Déantar anailís áisiúil ar thorthaí tástála i gcomhéadan an chórais. Leagann sé seo GitLab CI/CD amach ó Jenkins.

▍6. Srian a chur ar rochtain ar stórtha

Tacaíonn ardán GitLab le srian a chur ar rochtain ar stórtha. Mar shampla, is féidir ceadanna a oireann dá róil a thabhairt dóibh siúd a chomhoibríonn ar thionscadal i stór. Tá sé seo fíor go háirithe do thionscadail chorparáideacha.

▍7. Tacaíocht ghníomhach pobail

D'fhorbair pobal gníomhach timpeall GitLab, rud a chuireann le forbairt an ardáin seo agus a chuid uirlisí, go háirithe, GitLab CI / CD. Mar gheall ar chomhtháthú domhain GitLab CI/CD agus GitLab, i measc rudaí eile, tá sé éasca freagraí a fháil ar cheisteanna a thagann chun cinn agus tú ag obair le GitLab CI/CD.

▍8. Tacaíocht do chórais rialaithe leagan éagsúla

Is córas é GitLab CI/CD atá in ann oibriú le níos mó ná cód amháin a óstáiltear i stórtha GitLab. Mar shampla, is féidir an cód a stóráil i stór GitHub, agus is féidir an píblíne CI / CD a eagrú ar bhonn GitLab ag baint úsáide as GitLab CI / CD.

Comparáid idir Jenkins agus GitLab CI/CD

Is uirlisí an-mhaithe iad Jenkins agus GitLab CI/CD, agus tá an dá cheann acu in ann an píblíne CI/CD a rith go réidh. Ach má dhéanann tú iad a chur i gcomparáid, tarlaíonn sé, cé go bhfuil siad cosúil ar go leor bealaí, go bhfuil siad difriúil óna chéile ar bhealaí áirithe.

Characterization
Jenkins
GitLab CI/CD

Foinse oscailte nó foinse dúnta
Foinse oscailte
Foinse oscailte

Suiteáil
Ag teastáil.
Níl sé ag teastáil mar gur gné ionsuite é seo den ardán GitLab.

Gnéithe uathúla
Tacaíocht breiseán.
Comhtháthú domhain isteach sa chóras rialaithe leagan.

Tacaíocht
Ar iarraidh.
Ar fáil.

Suiteáil agus cumraíocht
Ní chuireann deacrachtaí faoi deara
Ní chuireann deacrachtaí faoi deara

Féin-imscaradh an chórais
Is é seo an t-aon bhealach chun an córas a úsáid.
Tacaithe.

Píblínte CI/CD a chruthú
Tacaithe, ag baint úsáide as Jenkins Píblíne.
Tacaithe.

Monatóireacht ar fheidhmíocht iarratais
Ar iarraidh.
Ar fáil.

Éiceachóras
Tá breis agus 1000 breiseán ann.
Tá an córas á fhorbairt laistigh de GitLab.

API
Tacaíonn sé le córas API chun cinn.
Tairiscintí API chun comhtháthú níos doimhne i dtionscadail.

Tacaíocht JavaScript
Ar fáil.
Ar fáil.

Comhtháthú le huirlisí eile
Tacaítear le comhtháthú le huirlisí agus ardáin eile (Slack, GitHub).
Go leor uirlisí le haghaidh comhtháthú le córais tríú páirtí, go háirithe - le GitHub agus Kubernetes.

Rialú cáilíochta cód
Tacaithe - ag baint úsáide as an breiseán SonarQube agus forlíontáin eile.
Tacaithe.

Difríochtaí idir Jenkins agus GitLab CI/CD

Tar éis cur síos agus comparáid a dhéanamh ar Jenkins agus GitLab CI/CD, díreoimid ar na difríochtaí idir na huirlisí DevOps seo. Má bhíonn tú ar an eolas faoi na difríochtaí seo, cabhróidh sé leat iad siúd ar fearr leo ceann de na huirlisí seo a thuiscint.

  • Is féidir le GitLab CI/CD stórtha Git a rialú go hiomlán. Táimid ag caint faoi bhrainsí stórtha agus roinnt gnéithe eile a bhainistiú. Ach ní thugann Jenkins, cé gur féidir leis oibriú le stórtha, an leibhéal céanna smachta orthu mar GitLab CI / CD.
  • Is tionscadal foinse oscailte saor in aisce é Jenkins. Déanann an té a roghnaíonn é a imscaradh go neamhspleách. Agus tá GitLab CI / CD san áireamh san ardán GitLab, is réiteach turnkey é seo.
  • Tacaíonn GitLab CI/CD le harduirlisí bainistíochta tasc a oibríonn ag leibhéal an tionscadail. Níl an taobh seo de Jenkins chomh forbartha céanna.

Jenkins agus GitLab CI/CD: láidreachtaí agus laigí

Anois tá tuairim agat faoi Jenkins agus GitLab CI/CD. Anois, chun aithne níos fearr a chur ort ar na huirlisí seo, déanaimis féachaint ar a gcuid láidreachtaí agus laigí. Glacaimid leis go bhfuil cinneadh déanta agat cheana féin ar an uirlis atá uait. Tá súil agam go ligfidh an chuid seo duit tú féin a thástáil.

▍ Láidreachtaí Jenkins

  • Líon mór breiseán.
  • Rialú iomlán ar shuiteáil uirlisí.
  • Dífhabhtáil shimplí ar reathaithe.
  • Socrú nód éasca.
  • Éasca imscaradh cód.
  • Córas bainistíochta dintiúir an-mhaith.
  • Solúbthacht agus solúbthacht.
  • Tacaíocht do theangacha ríomhchlárúcháin éagsúla.
  • Tá an córas intuigthe ar leibhéal iomasach.

▍ Laigí Jenkins

  • Is féidir le forlíontáin a bheith deacair a úsáid.
  • Agus Jenkins á n-úsáid i dtionscadail bheaga, féadfaidh an t-am a theastaíonn chun é a chumrú tú féin a bheith ró-mhór.
  • Easpa faisnéise anailíse ginearálta ar shlabhraí CI/CD.

▍ Láidreachtaí GitLab CI/CD

  • Comhtháthú maith le Docker.
  • Scálú simplí ar reathaithe.
  • Cur i gcrích comhthreomhar tascanna atá mar chuid de na céimeanna den phíblíne CI/CD.
  • Samhail ghraif thimthriallach dhírithe a úsáid agus caidreamh tascanna á socrú.
  • Ardleibhéal scalability mar gheall ar an bhféidearthacht a fhorghníomhú comhthreomhar na reathaithe.
  • Éasca le tascanna a chur leis.
  • Réiteach coinbhleachta simplí.
  • Córas slándála iontaofa.

▍ Laigí GitLab CI/CD

  • I gcás gach tasc, ní mór duit cur síos a dhéanamh ar artifacts agus iad a uaslódáil / a íoslódáil.
  • Ní féidir leat torthaí na gcraobhacha cumaiscthe a thástáil sula ndéantar iad a chumasc.
  • Agus céimeanna an phíblíne CI / CD á gcur síos, ní féidir fós céimeanna aonair a shonrú iontu.

Torthaí

Tá láidreachtaí agus laigí ag Jenkins agus GitLab CI/CD. Braitheann an freagra ar an gceist cad atá le roghnú ar riachtanais agus ar shaintréithe tionscadail ar leith. Tá gnéithe áirithe ag gach ceann de na huirlisí CI/CD a athbhreithníodh inniu, cé gur cruthaíodh na huirlisí seo chun an fhadhb chéanna a réiteach. Ag an am céanna, is uirlis neamhspleách é Jenkins, agus tá GitLab CI / CD mar chuid d'ardán atá deartha chun comhoibriú ar chód.

Agus córas CI / CD á roghnú, chomh maith lena chumais, is fiú na costais a bhaineann leis a chur san áireamh, agus cad iad na hinnealtóirí DevOps a thacaíonn leis an tionscadal go díreach a bhfuil taithí acu ar oibriú leo.

Cad iad na huirlisí CI/CD a úsáideann tú?

Cath Jenkins agus GitLab CI/CD

Cath Jenkins agus GitLab CI/CD

Foinse: will.com

Add a comment