{"id":96161,"date":"2020-10-08T19:42:48","date_gmt":"2020-10-08T17:42:48","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/bitva-jenkins-i-gitlab-ci-cd"},"modified":"2020-10-08T19:42:48","modified_gmt":"2020-10-08T17:42:48","slug":"bitva-jenkins-i-gitlab-ci-cd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/bitva-jenkins-i-gitlab-ci-cd","title":{"rendered":"Bitka med Jenkins in GitLab CI\/CD","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>V zadnjem desetletju so bile dose\u017eene pomembne napredovanja na podro\u010dju razvoja orodij za neprekinjeno integracijo (Continuous Integration, CI) in neprekinjeno dostavo (Continuous Delivery, CD). Razvoj tehnologij za integracijo razvoja in delovanja programske opreme (Development Operations, DevOps) je privedel do hitre rasti povpra\u0161evanja po CI\/CD orodjih. Obstoje\u010de re\u0161itve se stalno izbolj\u0161ujejo, da bi sledile trendom, izdajajo se nove razli\u010dice, v svetu zagotavljanja kakovosti programske opreme (Quality Assurance, QA) pa se neprestano pojavlja mno\u017eica novih izdelkov. Pri tako bogati izbiri se izbira ustreznega orodja izka\u017ee za zahtevno nalogo.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/522334\/\"><img decoding=\"async\" alt=\"Bitka med Jenkins in GitLab CI\/CD\" src=\"\/wp-content\/uploads\/2020\/10\/6cf6dfa92ebec7d6e44776e9c9bfbb6d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Med vsemi obstoje\u010dimi CI\/CD orodji sta dva projekta, ki jih zagotovo velja omeniti vsem, ki i\u0161\u010dejo nekaj s tega podro\u010dja. Govorimo o Jenkinsu in orodju GitLab CI\/CD, ki je del platforme GitLab. Jenkins ima ve\u010d kot <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/jenkinsci\/jenkins\">16000<\/a><\/noindex> zvezd na GitHubu. GitLabov repozitorij na gitlab.com je prejel nekoliko ve\u010d kot <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/gitlab-org\/gitlab\">2000<\/a><\/noindex> zvezd. \u010ce primerjamo priljubljenost repozitorijev, se izka\u017ee, da je Jenkins pridobil 8-krat ve\u010d zvezd kot platforma, ki vklju\u010duje GitLab CI\/CD. Vendar pa to ni edini kazalnik, na katerega je treba biti pozoren pri izbiri CI\/CD orodja. Obstaja \u0161e mnogo drugih dejavnikov, kar pojasnjuje, zakaj se v mnogih primerjavah Jenkins in GitLab CI\/CD znajdeta zelo blizu drug drugemu.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nVzemimo za primer podatke s platforme G2, ki zbira ocene in mnenja o najrazli\u010dnej\u0161ih izdelkih. Tukaj je povpre\u010dna ocena <noindex><a rel=\"nofollow\" href=\"https:\/\/www.g2.com\/products\/jenkins\/reviews\">Jenkins<\/a><\/noindex>, izra\u010dunana na podlagi 288 mnenj, 4,3 zvezde. O <noindex><a rel=\"nofollow\" href=\"https:\/\/www.g2.com\/products\/gitlab\/reviews\">GitLab<\/a><\/noindex> je tu 270 mnenj, povpre\u010dna ocena tega orodja pa zna\u0161a 4,4 zvezde. Ne bomo se motili, \u010de trdimo, da Jenkins in GitLab CI\/CD konkurirata drug drugemu na enakih pogojih. Zanimivo je omeniti, da je projekt Jenkins nastal leta 2011 in od takrat je priljubljeno orodje za testiranje. Vendar pa je projekt GitLab CI\/CD, ki je bil lansiran leta 2014, zasedel visoke polo\u017eaje zaradi naprednih mo\u017enosti, ki jih ponuja ta platforma.<\/p>\n<p>\u010ce govorimo o priljubljenosti Jenkinsa v primerjavi z drugimi podobnimi platformami, poudarjamo, da smo, ko smo objavili \u010dlanek, v katerem smo primerjali platforme Travis CI in Jenkins, izvedli anketo. V njej je sodelovalo 85 uporabnikov. Anketirance smo povabili, da izberejo CI\/CD orodje, ki jim je najbolj v\u0161e\u010d. 79 % je izbralo Jenkins, 5 % je izbralo Travis CI, 16 % pa je navedlo, da raje uporabljajo druga orodja.<\/p>\n<p><img decoding=\"async\" alt=\"Bitka med Jenkins in GitLab CI\/CD\" src=\"\/wp-content\/uploads\/2020\/10\/b66b5d3d5f27f3310c8bf0fc68f4c636.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Rezultati ankete<\/i><\/p>\n<p>Med drugimi CI\/CD orodji je najpogosteje omenjeno GitLab CI\/CD.<\/p>\n<p>\u010ce se resno ukvarjate z DevOps, morate skrbno izbrati ustrezna orodja, ob upo\u0161tevanju zna\u010dilnosti projekta, njegovega prora\u010duna in drugih zahtev. Da bi vam pomagali pri pravilni izbiri, nameravamo opraviti analizo Jenkinsa in GitLab CI\/CD. To bi vam moralo pomagati pri pravilni odlo\u010ditvi.<\/p>\n<h2>Spoznajmo Jenkins<\/h2>\n<p>\n<img decoding=\"async\" alt=\"Bitka med Jenkins in GitLab CI\/CD\" src=\"\/wp-content\/uploads\/2020\/10\/f7df92d1fb3f81f785fc59da82a943b7.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.jenkins.io\/\">Jenkins<\/a><\/noindex> \u2014 je \u0161iroko znano, prilagodljivo CI\/CD orodje, namenjeno avtomatizaciji \u0161tevilnih nalog, povezanih s programskimi projekti. Jenkins je popolnoma napisan v Javi in je izdan pod MIT licenco. Ima mo\u010dan nabor funkcij, usmerjenih v avtomatizacijo nalog, povezanih s sestavljanjem, testiranjem, name\u0161\u010danjem, integracijo in izdajo programske opreme. To orodje lahko uporabljate v razli\u010dnih operacijskih sistemih, med katerimi so macOS, Windows in \u0161tevilne distribucije Linuxa, na primer OpenSUSE, Ubuntu in Red Hat. Na voljo so namestitveni paketi Jenkinsa za razli\u010dne OS; to orodje lahko namestite tudi v Docker in v katerem koli sistemu, kjer je na voljo JRE (Java Runtime Environment).<\/p>\n<p>Razvijalci Jenkinsa so ustvarili \u0161e en projekt, Jenkins X, ki je zasnovan za delo v okolju Kubernetes. V Jenkins X so vklju\u010deni Helm, stre\u017enik Jenkins CI\/CD, Kubernetes in druga orodja, namenjena oblikovanju CI\/CD cevi, ki ustrezajo najbolj\u0161im praksam DevOps. Na primer, tukaj se uporablja GitOps.<\/p>\n<p>V nabor prednosti Jenkinsa lahko dodamo tudi to, da so njegovi skripti zelo dobro strukturirani, jasni in jih je enostavno brati. Ekipa Jenkinsa je ustvarila pribli\u017eno 1000 vti\u010dnikov, ki so namenjeni organizaciji sodelovanja Jenkinsa z razli\u010dnimi tehnologijami. V skriptih je mogo\u010de uporabljati avtentifikacijske sisteme, kar omogo\u010da povezovanje z razli\u010dnimi zaprtimi sistemi.<\/p>\n<p>\u0423 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430 \u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440\u0430 Jenkins \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u044d\u0442\u0430\u043f\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043b\u0438 \u0431\u044b\u043b\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u044b \u0442\u0435 \u0438\u043b\u0438 \u0438\u043d\u044b\u0435 \u044d\u0442\u0430\u043f\u044b \u0440\u0430\u0431\u043e\u0442\u044b. \u0421\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u0432\u0441\u0435\u043c \u044d\u0442\u0438\u043c \u043c\u043e\u0436\u043d\u043e, \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u0430 \u043f\u043e\u043b\u0430\u0433\u0430\u044f\u0441\u044c \u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430.<\/p>\n<h2>\u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 Jenkins<\/h2>\n<p>\n\u0421\u0440\u0435\u0434\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0445 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0435\u0439 Jenkins \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0442\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0438 \u043e\u0442\u043b\u0438\u0447\u043d\u0443\u044e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e. \u0415\u0441\u043b\u0438 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445 DevOps-\u0437\u0430\u0434\u0430\u0447, Jenkins \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u043c, \u0437\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u0441\u0442\u0430\u043b\u044c\u043d\u043e \u0441\u043b\u0435\u0434\u0438\u0442\u044c. \u0421 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 CI\/CD-\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 Jenkins.<\/p>\n<h3>\u258d1. \u0411\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0441\u0442\u044c, \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c<\/h3>\n<p>\nJenkins \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430 macOS, Windows \u0438 Linux. \u041e\u043d \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0440\u0435\u0434\u0435 Docker, \u0447\u0442\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0435\u0434\u0438\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e\u0435 \u0438 \u0431\u044b\u0441\u0442\u0440\u043e\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447. \u042d\u0442\u043e\u0442 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043a\u0430\u043a \u0441\u0435\u0440\u0432\u043b\u0435\u0442 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u0445, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0445 Java, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Apache Tomcat \u0438 GlassFish. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Jenkins \u0445\u043e\u0440\u043e\u0448\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0430. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.jenkins.io\/doc\/book\/installing\/\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0430<\/a><\/noindex>.<\/p>\n<h3>\u258d2. \u0420\u0430\u0437\u0432\u0438\u0442\u0430\u044f \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432<\/h3>\n<p>\n\u042d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 Jenkins \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u0440\u0430\u0437\u0432\u0438\u0442\u0430 \u043f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u0434\u0440\u0443\u0433\u0438\u0445 CI\/CD-\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 1500 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 \u0434\u043b\u044f Jenkins. \u042d\u0442\u0438 \u043f\u043b\u0430\u0433\u0438\u043d\u044b \u0440\u0435\u0448\u0430\u044e\u0442 \u0448\u0438\u0440\u043e\u043a\u0438\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u0437\u0430\u0434\u0430\u0447, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b. \u0428\u0438\u0440\u043e\u043a\u0438\u0439 \u0432\u044b\u0431\u043e\u0440 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0445 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e Jenkins \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0430\u0442\u044c \u0434\u043e\u0440\u043e\u0433\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0435 \u043f\u043b\u0430\u0442\u043d\u044b\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u044b. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c <noindex><a rel=\"nofollow\" href=\"https:\/\/www.lambdatest.com\/support\/docs\/jenkins-with-lambdatest\/\">integracije<\/a><\/noindex> Jenkins \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c DevOps-\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432.<\/p>\n<h3>\u258d3. \u041f\u0440\u043e\u0441\u0442\u0430\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430<\/h3>\n<p>\nJenkins \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0438 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c. \u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0442\u0430\u043a\u0436\u0435 \u0443\u0441\u0442\u0440\u043e\u0435\u043d \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u043e. \u0412\u0430\u0436\u043d\u043e \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0442\u0430\u043a \u043a\u0430\u043a \u0432 \u043d\u0435\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u043e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u043c\u043d\u043e\u0433\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b, \u043a\u0430\u0441\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Jenkins.<\/p>\n<h3>\u258d4. \u0414\u0440\u0443\u0436\u0435\u043b\u044e\u0431\u043d\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e<\/h3>\n<p>\nKot je bilo \u017ee omenjeno, je Jenkins odprtokodni projekt, katerega ekosistem vklju\u010duje ogromno \u0161tevilo vti\u010dnikov. Okoli Jenkinsa je vzniknila velika skupnost uporabnikov in razvijalcev, ki pomagajo pri razvoju projekta. Skupnost je eden od dejavnikov, ki prispeva k razvoju Jenkinsa.<\/p>\n<h3>\u258d5. Na voljo REST API<\/h3>\n<p>\nPri delu z Jenkinsom lahko uporabljate REST API, kar \u0161iri mo\u017enosti sistema. API za oddaljen dostop do sistema je na voljo v treh oblikah: XML, JSON s podporo za JSONP, Python. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.jenkins.io\/doc\/book\/using\/remote-access-api\/\">Evo<\/a><\/noindex> stran dokumentacije, ki razkriva podrobnosti o delu z REST API-jem Jenkinsa.<\/p>\n<h3>\u258d6. Podpora za hkratno izvajanje nalog<\/h3>\n<p>\nJenkins podpira paralelizacijo DevOps nalog. Lahko ga enostavno integrirate z ustreznimi orodji in prejmete obvestila o rezultatih izvajanja nalog. Izvajanje testiranja kode lahko pospe\u0161ite z organizacijo paralelne gradnje projekta z uporabo razli\u010dnih virtualnih strojev.<\/p>\n<h3>\u258d7. Podpora za delo v distribuiranih okoljih<\/h3>\n<p>\nJenkins omogo\u010da organizacijo distribuiranih gradb s pomo\u010djo ve\u010d ra\u010dunalnikov. Ta mo\u017enost je uporabna v velikih projektih in uporablja shemo dela, v skladu s katero obstaja en glavni stre\u017enik Jenkins in ve\u010d podrejenih naprav. Podrejene naprave se lahko uporabljajo tudi v situacijah, ko je treba organizirati testiranje projekta v razli\u010dnih okoljih. Te mo\u017enosti Jenkinsa ugodno razlikujejo od drugih podobnih projektov.<\/p>\n<h2>Spoznajte GitLab<\/h2>\n<p>\n<img decoding=\"async\" alt=\"Bitka med Jenkins in GitLab CI\/CD\" src=\"\/wp-content\/uploads\/2020\/10\/aa89f462b8378c8efefef142ff0ca6be.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/about.gitlab.com\/\">GitLab CI\/CD<\/a><\/noindex> lahko imenujemo eno najnovej\u0161ih in najljub\u0161ih orodij med DevOps in\u017eenirji. To brezpla\u010dno odprtokodno orodje je vgrajeno v sistem za nadzor razli\u010dic GitLab. GitLab ima razli\u010dico community, ki podpira upravljanje repozitorijev, orodja za sledenje te\u017eavam, organizacijo pregleda kode ter mehanizme, namenjene ustvarjanju dokumentacije. Podjetja lahko GitLab namestijo lokalno, pove\u017eejo to sistem z Active Directory in LDAP stre\u017eniki za zagotavljanje varnega prijavljanja in avtentifikacije uporabnikov.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/3quCZ7ZMg0Y\">Evo<\/a><\/noindex> videovodi\u010d, ki vam bo pomagal izvedeti, kako ustvariti CI\/CD cevi z uporabo mo\u017enosti GitLab CI\/CD.<\/p>\n<p>Sprva je GitLab CI\/CD izdan kot samostojen projekt, vendar je bil leta 2015 ta niz orodij integriran v GitLab 8.0. Lo\u010den GitLab CI\/CD stre\u017enik lahko podpira delo ve\u010d kot 25.000 uporabnikov. Na podlagi takih stre\u017enikov lahko ustvarite sisteme z visoko razpolo\u017eljivostjo.<\/p>\n<p>GitLab CI\/CD in glavni projekt GitLab sta napisana v Rubyju in Go. Izdana sta pod MIT licenco. GitLab CI\/CD, poleg obi\u010dajnih mo\u017enosti CI\/CD orodij, podpira tudi dodatne funkcionalnosti, povezane na primer z na\u010drtovanjem nalog.<\/p>\n<p>Integracija GitLab CI\/CD v projekt je zelo enostavna. Pri uporabi GitLab CI\/CD je postopek obdelave kode projekta razdeljen na faze, ki jih lahko sestavlja ve\u010d nalog, izvedenih v dolo\u010denem vrstnem redu. Naloge so lahko natan\u010dno nastavljene.<\/p>\n<p>Naloge se lahko izvajajo paralelno. Po nastavitvi zaporedja faz in nalog je CI\/CD cevovod pripravljen za delo. Napredek njegovega izvajanja lahko spremljate, saj lahko sledite stanju nalog. Uporaba GitLab CI\/CD je zelo priro\u010dna, verjetno celo bolj kot pri drugih podobnih orodjih.<\/p>\n<h2>Zna\u010dilnosti GitLab CI\/CD in GitLab<\/h2>\n<p>\nGitLab CI\/CD je eno najpopularnej\u0161ih DevOps orodij. Projekt se pona\u0161a z odli\u010dno dokumentacijo, z njim je enostavno in priro\u010dno delati. \u010ce \u0161e niste seznanjeni z GitLab CI\/CD, vam bo naslednji seznam funkcionalnosti tega orodja dal splo\u0161no predstavo o tem, \u010desar lahko pri\u010dakujete od njega. Treba je opozoriti, da se mnoge od teh funkcionalnosti nana\u0161ajo na samo platformo GitLab, v katero je integriran GitLab CI\/CD.<\/p>\n<h3>\u258d1. Priljubljenost<\/h3>\n<p>\nGitLab CI\/CD je razmeroma novo orodje, ki je na\u0161lo \u0161iroko uporabo. GitLab CI\/CD je postopoma postal izjemno priljubljeno CI\/CD orodje, namenjeno avtomatiziranemu testiranju in uvajanju programske opreme. Enostavno ga je nastaviti. Poleg tega je to brezpla\u010dno CI\/CD orodje, vgrajeno v platformo GitLab.<\/p>\n<h3>\u258d2. Podpora za GitLab Pages in Jekyll<\/h3>\n<p>\nJekyll je generator stati\u010dnih spletnih mest, ki ga je mogo\u010de uporabiti v okviru sistema GitLab Pages za ustvarjanje spletnih mest na podlagi GitLab repozitorijev. Sistem vzame izvorne materiale in na njihovi osnovi generira kon\u010dno stati\u010dno spletno mesto. Videza in funkcionalnosti teh spletnih mest lahko upravljate z urejanjem datoteke <code>_config.yml<\/code>, ki se uporablja v Jekyllu.<\/p>\n<h3>\u258d3. Mo\u017enosti na\u010drtovanja projektov<\/h3>\n<p>\nZahvaljujo\u010d mo\u017enosti na\u010drtovanja faz projektov je la\u017eje spremljati te\u017eave in njihovo skupno obravnavo. To omogo\u010da u\u010dinkovitej\u0161e upravljanje del na projektih ter na\u010drtovanje njihove izvedbe na dolo\u010den datum.<\/p>\n<h3>\u258d4. Samodejno raz\u0161irjanje CI-tekmovalcev<\/h3>\n<p>\nZ samodejnim raz\u0161irjanjem tekmovalcev, odgovornih za izvajanje specifi\u010dnih nalog, lahko znatno prihranite pri stro\u0161kih najema stre\u017eni\u0161kih virov. To je \u0161e posebej pomembno, kadar gre za okolja, kjer se hkrati izvajajo testi projektov. Poleg tega je to klju\u010dno za ve\u010dja projekti, ki obsegajo ve\u010d repozitorijev.<\/p>\n<h3>\u258d5. Orodja za sledenje te\u017eavam<\/h3>\n<p>\nMo\u010dne mo\u017enosti GitLab-a za sledenje te\u017eavam so povzro\u010dile, da to platformo uporabljajo \u0161tevilni odprtokodni projekti. GitLab CI\/CD omogo\u010da paralelno testiranje razli\u010dnih vejah kode. Rezultate testiranj je enostavno analizirati v vmesniku sistema. To GitLab CI\/CD jasno lo\u010duje od Jenkinsa.<\/p>\n<h3>\u258d6. Omejevanje dostopa do repozitorijev<\/h3>\n<p>\nPlatforma GitLab podpira omejevanje dostopa do repozitorijev. Na primer, tistim, ki sodelujejo pri projektu v dolo\u010denem repozitoriju, lahko dodelite pravice, ki ustrezajo njihovim vlogam. To je \u0161e posebej pomembno za korporativne projekte.<\/p>\n<h3>\u258d7. Aktivna podpora skupnosti<\/h3>\n<p>\nOkoli GitLab-a se je oblikovala aktivna skupnost, ki spodbuja razvoj te platforme in njenih orodij, zlasti GitLab CI\/CD. Globoka integracija GitLab CI\/CD in GitLab-a med drugim poenostavi iskanje odgovorov na vpra\u0161anja, ki se pojavijo pri delu z GitLab CI\/CD.<\/p>\n<h3>\u258d8. Podpora za delo z razli\u010dnimi sistemi za nadzor razli\u010dic<\/h3>\n<p>\nGitLab CI\/CD je sistem, ki lahko deluje ne le s kodo, shranjeno v repozitorijih GitLab. Na primer, kodo lahko shranite v repozitoriju GitHub, CI\/CD cevovod pa lahko organizirate na podlagi GitLab-a z uporabo GitLab CI\/CD.<\/p>\n<h2>Primerjava Jenkinsa in GitLab CI\/CD<\/h2>\n<p>\nJenkins in GitLab CI\/CD sta zelo dobri orodji, ki lahko zagotavljata normalno delovanje CI\/CD cevovoda. Vendar pa se izka\u017ee, da, \u010de jih primerjamo, kljub \u0161tevilnim podobnostim obstajajo razlike.<\/p>\n<p><strong>Karakteristika<\/strong><br \/>\n<strong>Jenkins<\/strong><br \/>\n<strong>GitLab CI\/CD<\/strong><\/p>\n<p>Odprt ali zaprt koda<br \/>\nOtvoreni kod.<br \/>\nOtvoreni kod.<\/p>\n<p>Namestitev<br \/>\nZahteva se.<br \/>\nNi potrebno, ker gre za vgrajeno funkcionalnost platforme GitLab.<\/p>\n<p>Edinstvene lastnosti<br \/>\nPodpora za vti\u010dnike.<br \/>\nGloboka integracija v sistem za upravljanje razli\u010dic.<\/p>\n<p>Podpora<br \/>\nNi na voljo.<br \/>\nNa voljo je.<\/p>\n<p>Namestitev in nastavitev<br \/>\nBrez te\u017eav<br \/>\nBrez te\u017eav<\/p>\n<p>Samoiniciativna namestitev sistema<br \/>\nTo je edina mo\u017enost uporabe sistema.<br \/>\nPodprto.<\/p>\n<p>Ustvarjanje CI\/CD cevi<br \/>\nPodprto, uporablja se Jenkins Pipeline.<br \/>\nPodprto.<\/p>\n<p>Nadzor zmogljivosti aplikacij<br \/>\nNi na voljo.<br \/>\nNa voljo je.<\/p>\n<p>Ekosistem<br \/>\nObstaja ve\u010d kot 1000 vti\u010dnikov.<br \/>\nSistem se razvija znotraj GitLab.<\/p>\n<p>API<br \/>\nPodpira razvito API strukturo.<br \/>\nPonudba API za globljo integracijo v projekte.<\/p>\n<p>Podpora za JavaScript<br \/>\nNa voljo je.<br \/>\nNa voljo je.<\/p>\n<p>Integracija z drugimi orodji<br \/>\nPodprta je integracija z drugimi orodji in platformami (Slack, GitHub).<br \/>\nVeliko orodij za integracijo z zunanjimi sistemi, zlasti z GitHub in Kubernetes.<\/p>\n<p>Kontrola kakovosti kode<br \/>\nPodprta je \u2014 z vti\u010dnikom SonarQube in drugimi vti\u010dniki.<br \/>\nPodprto.<\/p>\n<p><\/p>\n<h2>Razlike med Jenkins in GitLab CI\/CD<\/h2>\n<p>\nKo opi\u0161emo in primerjamo Jenkins in GitLab CI\/CD, se osredoto\u010dimo na razlike teh DevOps orodij. Poznavanje teh razlik vam bo pomagalo razumeti tiste, ki raje izbirajo eno orodje pred drugim.<\/p>\n<ul>\n<li>GitLab CI\/CD lahko v celoti nadzira Git repozitorije. Gre za upravljanje z vejami repozitorijev in nekatere druge mo\u017enosti. Jenkins, \u010deprav lahko deluje z repozitoriji, ne nudi enake ravni nadzora nad njimi kot GitLab CI\/CD.<\/li>\n<li>Jenkins je brezpla\u010den odprtokodni projekt. Tisti, ki ga izbere, ga postavi samostojno. GitLab CI\/CD pa je vklju\u010den v platformo GitLab, kar je pripravljen paket.<\/li>\n<li>GitLab CI\/CD podpira razvite zmogljivosti za upravljanje nalog, ki delujejo na ravni projektov. Ta vidik Jenkins je precej slab\u0161e razvit.<\/li>\n<\/ul>\n<p><\/p>\n<h2>Jenkins in GitLab CI\/CD: prednosti in slabosti<\/h2>\n<p>\nImate \u017ee dolo\u010deno predstavo o Jenkinsu in GitLab CI\/CD. Zdaj, da bi se \u0161e bolje spoznali s temi orodji, se osredoto\u010dimo na njihove prednosti in slabosti. Verjamemo, da ste se \u017ee odlo\u010dili, katero orodje potrebujete. Upamo, da vam bo ta razdelek pomagal preveriti svojo izbiro.<\/p>\n<h3>\u258dPrednosti Jenkinsa<\/h3>\n<p><\/p>\n<ul>\n<li>Veliko \u0161tevilo vti\u010dnikov.<\/li>\n<li>Popoln nadzor nad namestitvijo orodja.<\/li>\n<li>Enostavno odpravljanje napak v runnerjih.<\/li>\n<li>Enostavna nastavitev vozli\u0161\u010d.<\/li>\n<li>Enostavna namestitev kode.<\/li>\n<li>Zelo dobra sistema za upravljanje poverilnic.<\/li>\n<li>Fleksibilnost i univerzalnost.<\/li>\n<li>Podr\u0161ka za razli\u010dite programske jezike.<\/li>\n<li>Sistem je intuitivno razumljiv.<\/li>\n<\/ul>\n<p><\/p>\n<h3>\u258dSlabe strane Jenkinsa<\/h3>\n<p><\/p>\n<ul>\n<li>Mogu\u0107i su problemi prilikom kori\u0161\u0107enja dodataka.<\/li>\n<li>U malim projektima, vreme potrebno za njegovu samostalnu konfiguraciju mo\u017ee biti neopravdano veliko.<\/li>\n<li>Nedostatak op\u0161tih analiti\u010dkih podataka o CI\/CD lancima.<\/li>\n<\/ul>\n<p><\/p>\n<h3>\u258dJake strane GitLab CI\/CD<\/h3>\n<p><\/p>\n<ul>\n<li>Dobra integracija sa Docker-om.<\/li>\n<li>Jednostavno skaliranje runera.<\/li>\n<li>Paralelno izvr\u0161avanje zadataka koji \u010dine faze CI\/CD kanala.<\/li>\n<li>Kori\u0161\u0107enje modela orijentisanog acikli\u010dnog grafa za pode\u0161avanje odnosa zadataka.<\/li>\n<li>Visok nivo skalabilnosti zahvaljuju\u0107i mogu\u0107nosti paralelnog izvr\u0161avanja runera.<\/li>\n<li>Jednostavno dodavanje zadataka.<\/li>\n<li>Jednostavno re\u0161avanje sukoba.<\/li>\n<li>Pouzdan sistem bezbednosti.<\/li>\n<\/ul>\n<p><\/p>\n<h3>\u258dSlabe strane GitLab CI\/CD<\/h3>\n<p><\/p>\n<ul>\n<li>Za svaki zadatak potrebno je opisati i u\u010ditati\/izvoziti artefakte.<\/li>\n<li>Nije mogu\u0107e testirati rezultate spajanja grana pre njihovog stvarnog spajanja.<\/li>\n<li>Kada opisujete faze CI\/CD kanala, jo\u0161 uvek nije mogu\u0107e izdvojiti pojedina\u010dne etape.<\/li>\n<\/ul>\n<p><\/p>\n<h2>Zaklju\u010dki<\/h2>\n<p>\nI Jenkins i GitLab CI\/CD imaju svoje jake i slabe strane. Odgovor na pitanje \u0161ta izabrati zavisi od potreba i specifi\u010dnosti konkretnog projekta. Svaki od danas razmatranih CI\/CD alata ima odre\u0111ene karakteristike, iako su ti alati stvoreni za re\u0161avanje iste zadatke. Jenkins je samostalan alat, dok je GitLab CI\/CD deo platforme namenjene za saradnju na kodu.<\/p>\n<p>Kada birate CI\/CD sistem, osim njegovih mogu\u0107nosti, va\u017eno je razmotriti tro\u0161kove koji mogu biti povezani s njim i s \u010dim su DevOps in\u017eenjeri ve\u0107 navikli da rade u projektu.<\/p>\n<p>Koje CI\/CD alate koristite?<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"http:\/\/ruvds.com\/ru-rub?utm_source=habr&amp;utm_medium=article&amp;utm_campaign=perevod&amp;utm_content=bitva_jenkins_i_gitlab_ci_cd#order\"><img decoding=\"async\" alt=\"Bitka med Jenkins in GitLab CI\/CD\" src=\"\/wp-content\/uploads\/2020\/10\/cc25a9353b43773d11028a7a2caf96f1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"http:\/\/ruvds.com\/ru-rub\/news\/read\/123?utm_source=habr&amp;utm_medium=article&amp;utm_campaign=perevod&amp;utm_content=bitva_jenkins_i_gitlab_ci_cd\"><img decoding=\"async\" alt=\"Bitka med Jenkins in GitLab CI\/CD\" src=\"\/wp-content\/uploads\/2020\/10\/efaafe7301c2f6a2fb00a22e7a0fa41a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<br \/>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/522334\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0435 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044b \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043f\u0435\u0445\u0438 \u0432 \u0441\u0444\u0435\u0440\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 (Continuous Integration, CI) \u0438 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f (Continuous Delivery, CD). \u0420\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u041f\u041e (Development Operations, DevOps) \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u0431\u044b\u0441\u0442\u0440\u043e\u043c\u0443 \u0440\u043e\u0441\u0442\u0443 \u0441\u043f\u0440\u043e\u0441\u0430 \u043d\u0430 CI\/CD-\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0443\u043b\u0443\u0447\u0448\u0430\u044e\u0442\u0441\u044f, \u0441\u0442\u0440\u0435\u043c\u044f\u0441\u044c \u0438\u0434\u0442\u0438 \u0432 \u043d\u043e\u0433\u0443 \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c, \u0432\u044b\u0445\u043e\u0434\u044f\u0442 \u0438\u0445 \u043d\u043e\u0432\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438, \u0432 \u043c\u0438\u0440\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":96162,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-96161","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0435 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044b \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043f\u0435\u0445\u0438 \u0432 \u0441\u0444\u0435\u0440\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 (Continuous Integration, CI) \u0438 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f (Continuous Delivery, CD).\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/bitva-jenkins-i-gitlab-ci-cd\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0411\u0438\u0442\u0432\u0430 Jenkins \u0438 GitLab CI\/CD | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0435 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044b \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043f\u0435\u0445\u0438 \u0432 \u0441\u0444\u0435\u0440\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 (Continuous Integration, CI) \u0438 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f (Continuous Delivery, CD).\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/bitva-jenkins-i-gitlab-ci-cd\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-08T17:42:48+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-08T17:42:48+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Bitka Jenkinsa i GitLab CI\/CD | ProHoster","description":"U poslednjoj deceniji postignuti su zna\u010dajni napretci u oblasti razvoja alata za kontinuiranu integraciju (Continuous Integration, CI) i kontinuirano isporu\u010divanje (Continuous Delivery, CD).","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/bitva-jenkins-i-gitlab-ci-cd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0411\u0438\u0442\u0432\u0430 Jenkins \u0438 GitLab CI\/CD | ProHoster","og:description":"\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0435 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044b \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043f\u0435\u0445\u0438 \u0432 \u0441\u0444\u0435\u0440\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 (Continuous Integration, CI) \u0438 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f (Continuous Delivery, CD).","og:url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/bitva-jenkins-i-gitlab-ci-cd","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-08T17:42:48+00:00","article:modified_time":"2020-10-08T17:42:48+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"96161","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:51:00","updated":"2026-08-11 12:50:09","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/96161","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=96161"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/96161\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media\/96162"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=96161"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=96161"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=96161"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}