Battalja ta' Jenkins u GitLab CI/CD

Fl-aħħar għaxar snin, saru avvanzi sinifikanti fl-iżvilupp ta 'għodod għall-integrazzjoni kontinwa (Integrazzjoni Kontinwa, CI) u skjerament kontinwu (Konsenja Kontinwa, CD). L-iżvilupp ta 'teknoloġiji għall-integrazzjoni tal-iżvilupp u l-operat tas-softwer (Operazzjonijiet ta' Żvilupp, DevOps) wassal għal żieda mgħaġġla fid-domanda għal għodod CI / CD. Is-soluzzjonijiet eżistenti qed jitjiebu kontinwament, jippruvaw ilaħħqu maż-żminijiet, il-verżjonijiet ġodda tagħhom huma rilaxxati, fid-dinja tas-softwer tal-assigurazzjoni tal-kwalità (Assigurazzjoni tal-Kwalità, QA), ħafna prodotti ġodda qed jidhru kontinwament. B'tali rikkezza ta 'għażla, l-għażla tal-għodda t-tajba mhix biċċa xogħol faċli.

Battalja ta' Jenkins u GitLab CI/CD

Fost l-għodod kollha eżistenti tas-CI / CD, hemm żewġ proġetti li żgur ta’ min joqgħod attent lil xi ħadd li qed ifittex xi ħaġa minn dan il-qasam. Qed nitkellmu dwar Jenkins u l-għodda GitLab CI / CD, li hija parti mill-pjattaforma GitLab. Jenkins għandu aktar minn 16000 stilel fuq GitHub. Ir-repożitorju GitLab fuq gitlab.com skorja ftit aktar 2000 stilel. Jekk inqabblu l-popolarità tar-repożitorji, jirriżulta li Jenkins skorja 8 darbiet aktar stilel mill-pjattaforma, li tinkludi GitLab CI / CD. Imma meta tagħżel għodda CI / CD, dan huwa 'l bogħod mill-uniku indikatur li għandek tagħti attenzjoni għalih. Hemm ħafna oħrajn, u dan jispjega għaliex f'ħafna paraguni, Jenkins u GitLab CI / CD huma qrib ħafna ta 'xulxin.

Ħu, pereżempju, data mill-pjattaforma G2, li takkumula reviżjonijiet ta 'varjetà wiesgħa ta' prodotti u l-klassifikazzjonijiet li l-utenti jagħtuhom. Hawn hu l-klassifikazzjoni medja Jenkins, ibbażat fuq 288 reviżjonijiet, huwa 4,3 stilel. Oh oh GitLab hemm 270 reviżjonijiet, il-klassifikazzjoni medja għal din l-għodda hija 4,4 stilel. Mhux se niżbaljaw meta ngħidu li Jenkins u GitLab CI / CD jikkompetu ma’ xulxin fuq termini ugwali. Huwa interessanti li wieħed jinnota li l-proġett Jenkins deher fl-2011 u minn dakinhar kien għodda favorita għat-testers. Iżda fl-istess ħin, il-proġett GitLab CI / CD, imniedi fl-2014, ħa l-pożizzjoni tiegħu, għoli ħafna, grazzi għall-karatteristiċi avvanzati offruti minn din il-pjattaforma.

Jekk nitkellmu dwar il-popolarità ta 'Jenkins meta mqabbla ma' pjattaformi simili oħra, aħna ninnutaw li aħna, wara li ppubblikajna artiklu li jqabbel il-pjattaformi Travis CI u Jenkins, irranġajna stħarriġ. 85 utent ipparteċipaw fiha. Dawk li wieġbu ntalbu jagħżlu l-għodda CI/CD li jogħġbu l-aktar. 79% għażlu Jenkins, 5% għażlu Travis CI, u 16% indikaw li jippreferu għodod oħra.

Battalja ta' Jenkins u GitLab CI/CD
Ir-riżultati tal-votazzjoni

Fost għodod oħra CI/CD, GitLab CI/CD issemma l-aktar spiss.

Jekk int serju dwar DevOps, allura trid tagħżel bir-reqqa l-għodod xierqa, filwaqt li tqis l-ispeċifiċitajiet tal-proġett, il-baġit tiegħu, u rekwiżiti oħra. Biex ngħinuk tagħmel l-għażla t-tajba, se nirrevedu Jenkins u GitLab CI/CD. Nisperaw li dan jgħinek tagħmel l-għażla t-tajba.

Introduzzjoni għal Jenkins

Battalja ta' Jenkins u GitLab CI/CD
Jenkins hija għodda CI/CD magħrufa u flessibbli ddisinjata biex awtomat ħafna kompiti relatati ma 'proġetti ta' softwer. Jenkins huwa miktub kollu f'Java u rilaxxat taħt il-liċenzja MIT. Għandu sett qawwi ta’ karatteristiċi mmirati biex awtomatizzaw il-kompiti assoċjati mal-bini, l-ittestjar, l-iskjerament, l-integrazzjoni u r-rilaxx ta’ softwer. Din l-għodda tista 'tintuża fuq diversi sistemi operattivi. Dawn jinkludu macOS, Windows, u ħafna distribuzzjonijiet Linux bħal OpenSUSE, Ubuntu u Red Hat. Hemm pakketti ta 'installazzjoni għal Jenkins iddisinjati għal diversi OS, din l-għodda tista' tiġi installata fuq Docker u fuq kwalunkwe sistema li għandha JRE (Java Runtime Environment).

L-iżviluppaturi Jenkins ħolqu proġett ieħor, Jenkins X, li huwa ddisinjat biex jaħdem f'ambjent Kubernetes. Jenkins X jintegra Helm, is-server Jenkins CI/CD, Kubernetes, u għodod oħra biex jibnu pipelines CI/CD li jsegwu l-aħjar prattiki DevOps. Per eżempju, GitOps jintuża hawn.

Wieħed jista 'jżid mat-teżor tal-vantaġġi ta' Jenkins il-fatt li l-iskripts tiegħu huma strutturati tajjeb ħafna, jinftiehmu u faċli biex jinqraw. It-tim Jenkins ħoloq madwar 1000 plugin li huma mmirati biex jorganizzaw l-interazzjoni ta 'Jenkins ma' varjetà wiesgħa ta 'teknoloġiji. L-iskripts jistgħu jużaw sistemi ta 'awtentikazzjoni, li, pereżempju, jippermettulek tikkonnettja ma' diversi sistemi magħluqa.

Waqt it-tħaddim tal-pipeline Jenkins, tista 'tosserva x'jiġri f'kull pass, kemm jekk ċerti stadji tax-xogħol ikunu tlestew b'suċċess jew le. Tista' tara dan kollu, madankollu, mingħajr ma tuża ċertu interface grafiku, iżda tuża l-kapaċitajiet tat-terminal.

Karatteristiċi ta' Jenkins

Fost il-karatteristiċi magħrufa ta 'Jenkins hemm faċilità ta' setup, livell għoli ta 'awtomazzjoni ta' operazzjonijiet varji, u dokumentazzjoni eċċellenti. Jekk nitkellmu dwar is-soluzzjoni tal-kompiti DevOps, allura hawn Jenkins titqies bħala għodda affidabbli ħafna, li tużaha, bħala regola, ma jagħmilx sens li tissorvelja mill-qrib il-proċess kollu tal-ipproċessar tal-proġett. Dan mhuwiex il-każ b'għodod CI/CD oħra. Ejja nitkellmu dwar xi wħud mill-aktar karatteristiċi importanti ta 'Jenkins.

▍1. Ħieles, sors miftuħ, appoġġ multi-pjattaforma

Jenkins jista' jaħdem fuq pjattaformi macOS, Windows u Linux. Jista 'wkoll jiffunzjona f'ambjent Docker, li jippermettilek torganizza eżekuzzjoni uniformi u veloċi ta' kompiti awtomatizzati. Din l-għodda tista 'taħdem ukoll bħala servlet f'kontenituri ppermettiet Java bħal Apache Tomcat u GlassFish. Installazzjoni ta 'Jenkins b'mod kwalitattiv dokumentat.

▍2. Ekosistema tal-plugin żviluppata

L-ekosistema tal-plugins Jenkins tidher li hija ħafna aktar matura mill-ekosistemi tal-plugins ta 'għodod CI/CD oħra. Bħalissa hemm aktar minn 1500 plugin għal Jenkins. Dawn il-plugins huma mmirati biex isolvu firxa wiesgħa ta 'kompiti, bl-għajnuna tagħhom tista' awtomat varjetà ta 'proġetti. Il-ġid ta 'plugins b'xejn minn fejn tagħżel ifisser li jekk qed tuża Jenkins, m'għandekx għalfejn tixtri plugins imħallsa għaljin. Hemm possibbiltà integrazzjoni Jenkins b'ħafna għodod DevOps.

▍3. Installazzjoni u setup faċli

Jenkins huwa pjuttost faċli biex jiġi installat u kkonfigurat. Fl-istess ħin, il-proċess ta 'aġġornament tas-sistema huwa wkoll konvenjenti ħafna. Hawnhekk, għal darb'oħra, ta 'min isemmi l-kwalità tad-dokumentazzjoni, peress li fiha tista' ssib tweġibiet għal varjetà ta 'mistoqsijiet relatati mal-installazzjoni u l-konfigurazzjoni ta' Jenkins.

▍4. Komunità amikevoli

Kif diġà ssemma, Jenkins huwa proġett ta 'sors miftuħ, li l-ekosistema tiegħu tinkludi numru kbir ta' plugins. Komunità kbira ta' utenti u żviluppaturi żviluppat madwar Jenkins biex tgħin fl-iżvilupp tal-proġett. Il-komunità hija waħda mill-fatturi li jmexxi l-iżvilupp ta 'Jenkins.

▍5. Disponibbiltà tal-API REST

Waqt li taħdem ma 'Jenkins, tista' tuża l-API REST, li tespandi l-kapaċitajiet tas-sistema. API għall-aċċess mill-bogħod għas-sistema hija ppreżentata fi tliet verżjonijiet: XML, JSON b'appoġġ JSONP, Python. Hawnhekk Paġna ta 'dokumentazzjoni li tkopri dettalji dwar il-ħidma mal-Jenkins REST API.

▍6. Appoġġ għall-eżekuzzjoni parallela tal-kompiti

Jenkins jappoġġja l-parallelizzazzjoni tal-kompiti DevOps. Jista 'jiġi integrat faċilment ma' għodod rilevanti u jirċievi notifiki dwar ir-riżultati tal-kompiti. L-ittestjar tal-kodiċi jista 'jiġi aċċellerat billi tiġi organizzata bini parallel tal-proġett bl-użu ta' magni virtwali differenti.

▍7. Appoġġ għal xogħol f'ambjenti mqassma

Jenkins jippermettilek torganizza bini mqassam billi tuża diversi kompjuters. Din il-karatteristika hija applikabbli fi proġetti kbar u tuża skema ta 'xogħol, li skontha hemm server wieħed kaptan Jenkins u diversi magni slave. Magni slave jistgħu jintużaw ukoll f'sitwazzjonijiet fejn huwa meħtieġ li jiġi organizzat l-ittestjar ta 'proġett f'ambjenti differenti. Dawn il-karatteristiċi jiddistingwu lil Jenkins minn proġetti oħra simili.

Introduzzjoni għal GitLab

Battalja ta' Jenkins u GitLab CI/CD
GitLab CI/CD tista’ tissejjaħ waħda mill-aktar għodda DevOps l-aktar ġodda u maħbuba. Din l-għodda b'xejn ta 'sors miftuħ hija mibnija fis-sistema ta' kontroll tal-verżjoni GitLab. Il-pjattaforma GitLab għandha verżjoni komunitarja, tappoġġja l-ġestjoni tar-repożitorji, għodod ta 'traċċar tal-ħruġ, organizzazzjoni ta' reviżjoni tal-kodiċi, mekkaniżmi orjentati lejn id-dokumentazzjoni. Il-kumpaniji jistgħu jinstallaw GitLab lokalment, billi jgħaqqduh ma' Active Directory u servers LDAP għal awtorizzazzjoni sigura u awtentikazzjoni tal-utent.

Hawnhekk Tutorial video biex jgħinek titgħallem kif toħloq pipelines CI/CD billi tuża l-kapaċitajiet CI/CD ta’ GitLab.

GitLab CI/CD kien oriġinarjament rilaxxat bħala proġett waħdu, iżda fl-2015 dan is-sett ta 'għodod ġie integrat f'GitLab 8.0. Server wieħed GitLab CI/CD jista 'jappoġġa aktar minn 25000 utent. Ibbażat fuq servers bħal dawn, tista 'toħloq sistemi li huma disponibbli ħafna.

GitLab CI/CD u l-proġett prinċipali GitLab huma miktuba f'Ruby and Go. Huma rilaxxati taħt il-liċenzja MIT. GitLab CI/CD, minbarra l-karatteristiċi tas-soltu tal-għodod CI/CD, jappoġġja wkoll karatteristiċi addizzjonali relatati, pereżempju, mal-iskedar tax-xogħol.

L-integrazzjoni ta' GitLab CI/CD fi proġett hija faċli ħafna. Meta tuża GitLab CI/CD, il-proċess tal-ipproċessar tal-kodiċi tal-proġett huwa maqsum fi stadji, li kull wieħed minnhom jista 'jikkonsisti f'diversi kompiti mwettqa f'ċerta ordni. Il-kompiti jistgħu jiġu rfinati.

Il-kompiti jistgħu jimxu b'mod parallel. Wara li twaqqaf is-sekwenza tal-istadji u l-kompiti, il-pipeline CI/CD huwa lest biex imur. Tista 'tissorvelja l-progress tagħha billi timmonitorja l-istatus tal-kompiti. Bħala riżultat, l-użu ta 'GitLab CI / CD huwa konvenjenti ħafna, forsi aktar konvenjenti minn għodod simili oħra.

Karatteristiċi ta' GitLab CI/CD u GitLab

GitLab CI/CD hija waħda mill-aktar għodod DevOps popolari. Il-proġett huwa distint minn dokumentazzjoni ta 'kwalità għolja, il-karatteristiċi tiegħu huma faċli u konvenjenti biex jintużaw. Jekk għadek m'intix familjari ma' GitLab CI/CD, il-lista li ġejja tal-karatteristiċi ta' din l-għodda tagħtik idea ġenerali ta' x'tista' tistenna minnha. Għandu jiġi nnutat li ħafna minn dawn il-karatteristiċi huma relatati mal-pjattaforma GitLab nnifisha, li fiha GitLab CI / CD huwa integrat.

▍1. Popolarità

GitLab CI/CD hija għodda relattivament ġdida li sabet użu mifrux. GitLab CI/CD bil-mod sar għodda CI/CD popolari ħafna użata għall-ittestjar awtomatizzat u l-iskjerament tas-softwer. Huwa sempliċi biex jitwaqqaf. Hija wkoll għodda CI/CD b'xejn mibnija fil-pjattaforma GitLab.

▍2. Appoġġ għall-Paġni GitLab u Jekyll

Jekyll huwa ġeneratur ta 'sit statiku li jista' jintuża fis-sistema GitLab Pages biex jinħolqu siti bbażati fuq repożitorji GitLab. Is-sistema tieħu l-materjali mis-sors u tiġġenera sit statiku lest ibbażat fuqhom. Tista 'tikkontrolla d-dehra u l-karatteristiċi ta' siti bħal dawn billi teditja l-fajl _config.yml, użat minn Jekyll.

▍3. Kapaċità tal-ippjanar tal-proġett

Grazzi għall-abbiltà li tippjana l-istadji tal-proġetti, tiżdied il-konvenjenza tal-problemi ta 'traċċar u l-gruppi tagħhom. Dan jippermettilek timmaniġġja l-organizzazzjoni tax-xogħol fuq proġetti, tippjana l-implimentazzjoni tagħhom f'data speċifika.

▍4. Skalar awtomatiku ta 'runners CI

Grazzi għall-iskala awtomatika ta 'runners responsabbli għat-twettiq ta' kompiti speċifiċi, tista 'tiffranka ħafna fuq l-ispiża tal-kiri tal-kapaċitajiet tas-server. Dan huwa importanti ħafna, speċjalment fejn jidħlu ambjenti fejn il-proġetti jiġu ttestjati b'mod parallel. Barra minn hekk, dan huwa importanti għal proġetti kbar li jikkonsistu f'diversi repożitorji.

▍5. Għodod ta 'traċċar tal-ħruġ

Il-kapaċitajiet qawwija ta 'traċċar tal-kwistjonijiet ta' GitLab wasslu għal ħafna proġetti ta 'sors miftuħ biex jużaw il-pjattaforma. GitLab CI/CD jippermetti ttestjar parallel ta' fergħat ta' kodiċi differenti. Ir-riżultati tat-test huma analizzati b'mod konvenjenti fl-interface tas-sistema. Dan jiddistingwi GitLab CI/CD apparti minn Jenkins.

▍6. Restrizzjoni tal-aċċess għar-repożitorji

Il-pjattaforma GitLab tappoġġja r-restrizzjoni tal-aċċess għar-repożitorji. Pereżempju, dawk li jikkollaboraw fuq proġett f'repożitorju jistgħu jiġu assenjati permessi xierqa għar-rwoli tagħhom. Dan hu veru speċjalment għal proġetti korporattivi.

▍7. Appoġġ attiv tal-komunità

Żviluppat komunità attiva madwar GitLab, li tikkontribwixxi għall-iżvilupp ta 'din il-pjattaforma u l-għodod tagħha, b'mod partikolari, GitLab CI / CD. L-integrazzjoni profonda ta' GitLab CI/CD u GitLab, fost affarijiet oħra, tagħmilha faċli li ssib tweġibiet għal mistoqsijiet li jinqalgħu meta taħdem ma' GitLab CI/CD.

▍8. Appoġġ għal diversi sistemi ta 'kontroll tal-verżjoni

GitLab CI/CD hija sistema li tista' taħdem b'aktar minn sempliċi kodiċi ospitat fir-repożitorji GitLab. Per eżempju, il-kodiċi jista 'jinħażen f'repożitorju GitHub, u l-pipeline CI / CD jista' jiġi organizzat fuq il-bażi ta 'GitLab bl-użu ta' GitLab CI / CD.

Tqabbil ta 'Jenkins u GitLab CI/CD

Jenkins u GitLab CI/CD huma għodod tajbin ħafna, li t-tnejn li huma kapaċi jagħmlu l-pipeline CI/CD jaħdem bla xkiel. Imma jekk inqabbluhom, jirriżulta li, għalkemm huma simili f'ħafna modi, huma differenti minn xulxin f'ċerti modi.

Karatterizzazzjoni
Jenkins
GitLab CI/CD

Sors miftuħ jew sors magħluq
sors miftuħ
sors miftuħ

Installazzjoni
Meħtieġ.
Mhux meħtieġ peress li din hija karatteristika integrata tal-pjattaforma GitLab.

Karatteristiċi Uniċi
Appoġġ tal-plugin.
Integrazzjoni profonda fis-sistema ta 'kontroll tal-verżjoni.

Appoġġ
Nieqes.
Disponibbli.

Installazzjoni u konfigurazzjoni
Diffikultajiet ma jikkawżaw
Diffikultajiet ma jikkawżaw

Awto-skjerament tas-sistema
Dan huwa l-uniku mod biex tuża s-sistema.
Appoġġjati.

Ħolqien CI/CD Pipelines
Appoġġjati, bl-użu Jenkins Pipeline.
Appoġġjati.

Monitoraġġ tal-prestazzjoni tal-applikazzjoni
Nieqes.
Disponibbli.

Ekosistema
Hemm aktar minn 1000 plugin.
Is-sistema qed tiġi żviluppata fi ħdan GitLab.

API
Jappoġġja sistema API avvanzata.
Joffri API għal integrazzjoni aktar profonda fi proġetti.

Appoġġ JavaScript
Disponibbli.
Disponibbli.

Integrazzjoni ma' għodod oħra
L-integrazzjoni ma 'għodod u pjattaformi oħra hija appoġġjata (Slack, GitHub).
Ħafna għodod għall-integrazzjoni ma 'sistemi ta' partijiet terzi, b'mod partikolari - ma 'GitHub u Kubernetes.

Kontroll tal-kwalità tal-kodiċi
Appoġġjati - bl-użu tal-plugin SonarQube u plugins oħra.
Appoġġjati.

Differenzi bejn Jenkins u GitLab CI/CD

Wara li ddeskriviet u qabbel lil Jenkins u GitLab CI/CD, ejja niffukaw fuq id-differenzi bejn dawn l-għodod DevOps. Li tkun taf dawn id-differenzi tgħinek tifhem lil dawk li jippreferu waħda minn dawn l-għodda fuq l-oħra.

  • GitLab CI/CD jista 'jikkontrolla bis-sħiħ ir-repożitorji Git. Qed nitkellmu dwar il-ġestjoni tal-fergħat tar-repożitorji u xi karatteristiċi oħra. Iżda Jenkins, għalkemm jista 'jaħdem ma' repożitorji, ma jagħtix l-istess livell ta 'kontroll fuqhom bħal GitLab CI / CD.
  • Jenkins huwa proġett b'xejn ta' sors miftuħ. Min jagħżelha jużaha b'mod indipendenti. U GitLab CI / CD huwa inkluż fil-pjattaforma GitLab, din hija soluzzjoni turnkey.
  • GitLab CI/CD jappoġġja għodod avvanzati għall-ġestjoni tal-kompiti li jaħdmu fil-livell tal-proġett. Din in-naħa ta 'Jenkins hija inqas żviluppata.

Jenkins u GitLab CI/CD: saħħiet u dgħufijiet

Issa għandek xi idea dwar Jenkins u GitLab CI/CD. Issa, biex tkun familjari aħjar ma 'dawn l-għodod, ejja nagħtu ħarsa lejn is-saħħiet u d-dgħufijiet tagħhom. Aħna nassumu li diġà ddeċidejt liema għodda għandek bżonn. Nisperaw, din it-taqsima tippermettilek tittestja lilek innifsek.

▍Qawwiet ta' Jenkins

  • Numru kbir ta 'plugins.
  • Kontroll sħiħ fuq l-installazzjoni tal-għodda.
  • Debugging sempliċi ta 'runners.
  • Setup faċli tan-nodi.
  • Skjerament faċli tal-kodiċi.
  • Sistema ta 'ġestjoni tal-kredenzjali tajba ħafna.
  • Flessibilità u versatilità.
  • Appoġġ għal diversi lingwi ta 'programmar.
  • Is-sistema tinftiehem fuq livell intuwittiv.

▍Dgħufijiet ta’ Jenkins

  • Il-plugins jistgħu jkunu diffiċli biex jintużaw.
  • Meta tuża Jenkins fi proġetti żgħar, il-ħin meħtieġ biex tikkonfiguraha lilek innifsek jista 'jkun kbir irraġonevoli.
  • Nuqqas ta' informazzjoni analitika ġenerali dwar ktajjen CI/CD.

▍Qawwiet ta' GitLab CI/CD

  • Integrazzjoni tajba ma 'Docker.
  • Skalar sempliċi ta 'runners.
  • Eżekuzzjoni parallela tal-kompiti li huma parti mill-istadji tal-pipeline CI/CD.
  • L-użu tal-mudell tal-graff aċikliku dirett meta twaqqaf relazzjonijiet tal-kompiti.
  • Livell għoli ta 'skalabbiltà minħabba l-possibbiltà ta' eżekuzzjoni parallela ta 'runners.
  • Faċilità li żżid il-kompiti.
  • Riżoluzzjoni sempliċi tal-kunflitt.
  • Sistema ta 'sigurtà affidabbli.

▍Nuqqasijiet ta’ GitLab CI/CD

  • Għal kull kompitu, għandek bżonn tiddeskrivi u ttella' / tniżżel artifacts.
  • Ma tistax tittestja r-riżultati tal-fergħat li jingħaqdu qabel ma jkunu fil-fatt magħquda.
  • Meta tiddeskrivi l-istadji tal-pipeline CI / CD, għadu mhux possibbli li jintgħażlu stadji individwali fihom.

Riżultati ta '

Kemm Jenkins kif ukoll GitLab CI/CD għandhom saħħiet u dgħufijiet. It-tweġiba għall-mistoqsija dwar x'għandek tagħżel tiddependi fuq il-ħtiġijiet u l-karatteristiċi ta 'proġett partikolari. Kull waħda mill-għodod CI/CD riveduti llum għandha ċerti karatteristiċi, għalkemm dawn l-għodod inħolqu biex isolvu l-istess problema. Fl-istess ħin, Jenkins hija għodda waħedha, u GitLab CI / CD hija parti minn pjattaforma mfassla biex tikkollabora fuq il-kodiċi.

Meta tagħżel sistema CI / CD, minbarra l-kapaċitajiet tagħha, ta 'min tqis l-ispejjeż li jistgħu jkunu assoċjati magħha, u x'inhuma eżattament l-inġiniera DevOps li jappoġġjaw il-proġett huma mdorrijin jaħdmu magħhom.

Liema għodod CI/CD tuża?

Battalja ta' Jenkins u GitLab CI/CD

Battalja ta' Jenkins u GitLab CI/CD

Sors: www.habr.com

Żid kumment