Jenkinsas vs Travisas-CI: Koks skirtumas?

Turinys:

Anonim

Kas yra PI?

Nuolatinė integracija yra programinės įrangos kūrimo metodas, kai komandos nariai gali integruoti savo darbą bent kartą per dieną. Taikant šį metodą, kiekviena integracija tikrinama automatizuotu komponavimu, kad būtų galima ieškoti klaidos. KI koncepcija pirmą kartą buvo įdiegta daugiau nei prieš du dešimtmečius, kad būtų išvengta „integracijos pragaro“, kuris įvyksta, kai integracija atidedama iki projekto pabaigos.

Šioje pamokoje sužinosite

  • Kas yra PI?
  • Kas yra „Travis CI“?
  • Kas yra Jenkinsas?
  • Ką veikia Travisas?
  • Ką veikė Dženkinas?
  • „Travis CI“ funkcijos:
  • Jenkin funkcijos:
  • Travisas prieš Jenkinsą
  • Populiarumo indeksas
  • Kuris geresnis?

Kaip veikia KI?

  • Kūrėjai rašo kodą ir atlieka pakeitimus bendroje saugykloje
  • Po to CI serveris stebi saugyklą ir įvertina visus pakeitimus
  • KI kuria sistemą ir atlieka integravimo bei vieneto testus
  • Serveris išleidžia diegiamus artefaktus
  • „Continous“ integravimo serveris priskiria versijos ir pastato kodui žymėjimą
  • Tada KI serveris praneša komandai apie sėkmingą kūrimą. Jei bandymai nepavyksta, serveris įspėja kūrinį apie įvykį. Komanda spręs problemas kuo greičiau.

PAGRINDINIAI SKIRTUMAI

  • „Travis CI“ yra komercinis KI įrankis, o „Jenkins“ yra atviro kodo įrankis.
  • „Travis CI“ reikia labai mažai laiko pradėti, o Jenkinsui reikia išsamios sąrankos.
  • „Travis CI“ siūlo mažiau pritaikymo galimybių, o „Jenkins“ siūlo daugybę pritaikymo galimybių.
  • „Travis CI“ turi YAML konfigūracijos failą, o „Jenkins“ suteikia vartotojui visą konfigūravimo parinktį.

Kas yra „Travis CI“?

„Travis CI“ buvo pirmasis BP kaip paslaugų įrankis. Jis pristatė naują požiūrį į statybų kodeksą debesyje. Šis BP įrankis leidžia vartotojui užsiregistruoti, susieti saugyklą, kurti ir išbandyti savo programas.

„Travis CI“ įrankis gali lengvai integruotis į įprastas debesų saugyklas, tokias kaip „GitHub“ ir „Bitbucket“. Jis siūlo daugybę automatizuotų interaktyviųjų komunikacijų galimybių, kurios nereikalauja specialaus serverio, nes „Travis“ CI serveris priglobtas debesyje. Tai leidžia išbandyti įvairiose aplinkose, įvairiose mašinose, veikiančiose skirtingose ​​operacinėse sistemose.

„Travis CI“ yra nemokama atvirojo kodo projektams. Komerciniams projektams reikia įsigyti įmonės planą.

Kas yra Jenkinsas?

„Jenkins“ yra apdovanojimų pelnęs nuolatinės integracijos įrankis, stebintis diegimo ciklų vykdymą. Tai prasidėjo kaip šalutinis „Sun“ programinės įrangos inžinierių grupės projektas. Vėliau jis buvo išplėstas kaip vienas iš populiarių atvirojo kodo KI įrankių, kuris padeda programinės įrangos kūrimo komandoms automatizuoti jų diegimą.

„Jenkins“ yra „Java“ pagrįstas įrankis, o tai reiškia, kad norint jį valdyti reikia tik „Java Runtime Environment“. Taigi „Jenkins“ gali būti įdiegta bet kurioje operacinėje sistemoje, kurioje veikia „Java“.

Šiame įrankyje kūrėjai taip pat gali nurodyti tinkintų versijų sąlygas. Jenkins palaiko didžiulį papildinių archyvą. Tai leidžia kūrėjams pakeisti Jenkin išvaizdą ir veikimą.

Be to, „Jenkins Pipeline“ įskiepių rinkinyje yra specialių įrankių, leidžiančių kūrėjams modeliuoti sudėtingus pristatymo vamzdynus naudojant DSL („Digital Subscribe line“) metodą.

Ką veikia Travisas?

„Travis CI“ siūlo šiuos privalumus:

  • Galite stebėti „GitHub“ projektus
  • Vyksta greitai išbandykite ir sugeneruokite rezultatus. Galimas lygiagretus bandymas.
  • Kurkite artefaktus ir patikrinkite kodo kokybę
  • Lengvas diegimas į debesijos paslaugas
  • Tai gali nustatyti mažus ir didelius kodo pakeitimus.
  • Kūrėjai gali naudoti „Travis CI“, norėdami stebėti testus, kai jie veikia.
  • Įrankis integruojamas su „Slack“, „HipChat“, „Email“ ir kt.

Ką veikia Dženkinas?

„Jenkins“ leidžia automatizuoti kūrimo, testavimo ir diegimo užduotis. Šis įrankis palaiko įvairias OS, pvz., „Windows“, „Mac OSX“ ir „Linux“ sistemas.

Be to, „Jenkins“ suteikia jums galimybę greitai sukurti ir išbandyti kodą, kad gautumėte ankstyvą atsiliepimą apie tai, ar jis paruoštas gamybai, ar ne. Daugeliu atvejų Jenkinui reikės nedaug modifikacijų pagal jūsų komandos įprastus reikalavimus.

„Travis CI“ funkcijos:

  • Automatinė integracija su „GitHub“
  • Prieiga prie saugyklos, kad būtų galima kurti traukimo užklausas
  • Palaikoma 21 kalba, pvz., „Android“, C, C #, C ++, „Java“, „JavaScript“ (su „Node.js“), „Perl“, PHP, „Python“, R, „Ruby“ ir kt.
  • Iš anksto įdiegti kūrimo ir bandymo įrankiai
  • Galimos paslaugos - duomenų bazės, pranešimų eilės ir kt.
  • Diegimas keliose debesijos tarnybose
  • Šifruoti saugius aplinkos kintamuosius ar failus
  • Virtualios mašinos, atkurtos po kiekvieno pastatymo
  • CLI klientas ir API scenarijams
  • Ateinama su nemokamu debesų priegloba, kuriai nereikia priežiūros ar administravimo.

Jenkin funkcijos:

  • Lengva įdiegti, atnaujinti ir konfigūruoti
  • Paskirstyti kūriniai
  • Išorinių darbų stebėjimas
  • Daugiau nei 600 papildinių jūsų „Jenkins“ aplinkai pritaikyti
  • Daugiau nei 1000 viešų „Github“ saugyklų, daugiau nei 500 bendraautorių, aktyvi veikla
  • Parama įvairiems autentifikavimo metodams, versijų valdymo sistemoms, pranešimams ir kt.
  • „Jenkins“ teikia nuotolinės prieigos API ir jos funkcijas.
  • Pateikite galingą CI / CD įrankį dideliems projektams
  • Jis palaiko įvairius darbo modelius, tokius kaip „Freestyle“, „Pipeline“ ir kt.
  • Leidžia kūrėjams pridėti plėtinių
  • Suderinamas su „Docker“, „Libvirt“, „Kubernetes“ ir daugeliu kitų programų

Travisas prieš Jenkinsą

Parametras Jenkin Travisas
Kaina Jenkinsas yra laisvas. Tačiau kūrėjų komanda turi paleisti ir prižiūrėti savo serverį. Tai galėtų būti laikoma papildomomis išlaidomis. „Travis CI“ verslo programų paketai prasideda nuo 129 USD per mėnesį. Išlaidų padidėjimas atsižvelgiant į jums reikalingą palaikymo lygį.
Nustatykite laiką Jenkinsui reikalinga išsami sąranka. Taigi turėsite labai ilgą laukimo laiką, kol baigsite diegti. Pradėti reikia labai mažiau laiko. Sukurkite konfigūracijos failą ir pradėkite integruoti.
Spektaklis Jei ieškote CI įrankio su neribotomis pritaikymo galimybėmis, tada „Jenkins“ yra geriausias pasirinkimas. „Travis CI“ yra geriausias pasirinkimas, jei dirbate atviro kodo projekte.
Įrankio tipas Tai yra atviro kodo įrankis, kuriuo galima nemokamai naudotis. Tai komercinis KI įrankis
Naudojimas Paprasta naudoti Lankstus naudoti
Gitubas Geras Githubui Puikiai tinka „Github“
Parama Platus bendruomenės palaikymas. Ribota parama bendruomenei.
Argumentai "už"
  • Tinkinimas yra didžiausias „Jenkins CI“ serverio privalumas
  • Norėdami pakeisti „Jenkins“ išvaizdą, galima sukonfigūruoti platų papildinių archyvą.
  • Taip pat galite pridėti naujų funkcijų, tokių kaip autentifikavimas, įspėjimai ir prisijungimo duomenys.
  • Integracija su „GitHub“ ir debesimis
  • Neribota atviro kodo projektai, turintys visas funkcijas
  • Plati projekto konfigūracija per .travis.ymi failą
  • Leidžia atlikti grupinius bandymus ir vykdyti juos lygiagrečiai
  • Kelios aplinkos ir tikslinės platformos (ty mazgas 0.10,0.8,0.6, Li on).
Minusai
  • Vienas pagrindinių „Jenkins“ trūkumų, susijusių su nuolatine integracija, yra tai, kad jis yra labai konfigūruojamas. Nėra jokios sąrankos. Štai kodėl viską sukonfigūruoti sistemoje gali užtrukti dvi – tris valandas.
  • Didžiausi „Travis CI“ diegimo trūkumai yra tai, kad jo komerciniai planai prasideda nuo 129 USD / m, o tai yra gana brangu.
  • Netinka didelio saugumo projektams
  • Skirtingai nuo kitų CI įrankių, jis nesiūlo „Bitbucket“ palaikymo.
Naudojimo planai Laisvas Nemokama atvirojo kodo projektams. Tačiau mokama už įmones.
Serverio mašina Serverio pagrindu Debesų pagrindu
Tinkinimo parinktys Daugiau Mažiau
Konfigūracija Visiškai pritaikoma YAML
Sistemos valdymas Pilnas Labai mažiau

Populiarumo indeksas

Klausimų skaičius pažymėtas Jenkins ir Travis „Stack Overflow“.

Kuris geresnis?

Taigi, atlikę minėtą diskusiją, galime sužinoti, kad Travisas ir Jenkinsas siūlo nuostabias savybes. Tačiau nedideli atvirojo kodo projektai geriausiai tinka „Travis CI“, nes juos lengva valdyti ir greitai nustatyti. Kita vertus, didelė įmonė labiausiai tinka „Jenkins“, nes ji siūlo nemokamą privataus projekto licencijavimą ir platų pritaikomų funkcijų spektrą. Taigi galime sakyti, kad abi šios nuolatinės integracijos priemonės yra geros.