Atlassian Bamboo vs Jetbrains Teamcity - þar er greinilegur sigurvegari

Ég hef notað samfellda netþjóna í meira en áratug. Ég notaði Jenkins, Bamboo, Travis, reyndi Circle, Jenkins, GOCD, Semaphore og BuildBot. Ég tek próf og stöðuga dreifingu mjög alvarlega og hef sterkar kröfur til byggja netþjóninn minn. Ég rak sjálf-hýst bambus í meira en 4 ár, samþætt með Jira og Bitbucket netþjóninum og var ánægður, ekki ánægður.

Þegar Atlassian hækkaði verð fyrir Bambus ákvað ég að meta nýja CI-lausn. Ég var ekki ánægður með lögun þróun á bambus. Ég notaði til margra innbyggðra handritaverkefna vegna þess að það voru ekki nægjanleg viðbót við notkunarmálin mín. Ég hafði ekki efni á öðrum byggingarfulltrúa, ég hafði ekki efni á bambus í fyrsta lagi vegna þess að ég er aðeins einn mann þróunarteymis.

Ég stakk á þá alla. Ég byrjaði með opinn aðgang, en Jenkins og GOCD erum alvarleg martröð fyrir mig. Jenkins vegna viðmótsins (jafnvel með bláa hafið), GOCD vegna þess að vantar samþættingar og ósveigjanleika. Ég varð svo vonsvikinn ...

Ég byrjaði að meta þekkt SaaS eins og Circle og Semaphore og hvað ekki. En þeim leið öllum eins og mig vanti heilt verkflæði sem ég hafði með bambus.

Ókeypis fyrir litla notkun

Í lokin skoðaði ég leyfi fyrir Jetbrains Teamcity og var hissa á að það er ókeypis flokkaupplýsingar fyrir lítil fyrirtæki. Auðvelt var að búa til uppsetninguna með tengikví og allt byrjaði að líða mjög náttúrulega. Notendaviðmótið er svolítið gamalt skóla en það er PAKKT með efni. Ég var svolítið efins en seldi síðan á gríðarlegum fjölda valkosta fyrir allt. Ein vika í HÍ er bara gola. Þú getur sérsniðið allt og ég gat ekki aðeins fært öll verkefnin mín frá bambus til Teamcity heldur bætt alla skipulag mína.

Ég hélt alltaf að Teamcity væri underdog í CI og of oldschool, en það var það ekki.

Hérna er listinn yfir aðgerðir sem mylja bambus fyrir mitt mál:

Sjálfvirkt útfyllingu fyrir breytur og stillingarbreytur

Það eru svo margar breytur á hverjum CI-netþjóni sem vilja nota. En þau eru alltaf svo erfitt að muna. Í gögnum Bambus voru allar breytur skráðar, en hugmynd TC er miklu betri:

það mun sjálffyllt breytur um leið og þú slærð inn%. Þetta virkar fyrir einfalda stillingarvalkosti (eins og smásöluborðið hér), en einnig í inline forskriftum. Svo einfalt, svo gagnlegt!

Bein leiðsögn

Ein af ástæðunum fyrir því að þú þarft að venjast HÍ er sú að aðalleikararnir hafa litla ör fest við sig.

Litlu örvarnar alls staðar í HÍ frá liðsheild - merktar með rauðum hring

En þeir eru svo handhægir. Þegar þú smellir á þá færðu samhengisleiðsagnatengla fyrir hlutinn. Til dæmis, þegar þú smellir á byggingarniðurstöðuna, geturðu skoðað annálinn, séð niðurstöður prófsins, breytt stillingum o.s.frv. Það er alltaf sjálfgefin leið til að fara, sem er venjulega þar sem þú vilt fara í fyrsta lagi, en oft geturðu hlíft tveimur eða fleiri smellum. Þegar búið er að læra þetta er svo gríðarlegur tími öruggari.

Samhengisvalmyndir eru öruggir tonn af tíma við siglingar

Smíða og dreifa sniðmátum

Teamcity hefur svo marga umhugsaða aukahluti þegar kemur að því að endurnýta sameiginlega hluti í stillingum þínum. Þetta er það sem draumar eru gerðir úr. Þú getur búið til sniðmát úr smíðum, eða byrjað frá grunni og búið til nýjar stillingar byggðar á því sniðmáti. Þegar sniðmátinu hefur verið breytt, erfir byggingarstillingarnar breytingarnar. Þetta er svo vel gert, vegna þess að þeir merktu allt kristaltært: kemur þessi stilling frá sniðmátinu? Hef ég hnekkt því í þessari stillingu?

Verkefni og verkefni-stigveldi

Í Teamcity er fyrsti borgarinn uppbygging. Það eru líka sendar stillingar. Þeir búa inni í verkefni. En verkefnið sjálft gæti verið hluti af stærra verkefnaveldi, eins og: „Verkefni fyrir viðskiptavini A“ eða „Verkefni með Symfony stuðningi“. Þetta skipuleggur Projects-Mælaborðið þitt svo vel. Það er mögulegt að erfa stillingar og breytur frá foreldraverkefnum - morðingjaaðgerð.

Meta Runners (mun blása í hugann)

Ertu með mikið af uppbyggingum? Þeir byggja á annan hátt, en þú framkvæma prófin þín alltaf á sama hátt? (til dæmis: keyrsluprófanir). Teamcity hefur eiginleikann fyrir þig: það kallast metahlauparar. Þú getur dregið þær úr einni af byggingarsamsetningunum þínum og notað það sem safn af uppbyggingarskrefum sem verða búnt fyrir aðrar byggingarstillingar. Metahlauparinn er til staðar sem xml, sem þú getur breytt. Notaðu metahlauparann ​​á aðrar build configs og nákvæmlega sömu skref verða kölluð í hvert skipti sem byggja er keyrt. Það er mögulegt að veita metahlaupara færibreytur.

XML Skilgreining á metahlaupara

Þetta sló mig af mér. Ef ég bara vissi þetta fyrir nokkrum árum: hefði sparað mér mikið stress! Ég nota metahlaupara til að búta saman skrefin til að keyra alla prufusvítuna mína. T.d. keyra phpunit hlaupa garnpróf, greina prófunarskýrslur og hreinsun.

Hladdu upp ssh lyklum

Það er svo erfitt að nota ssh skilríki í bambus. Það er svo auðvelt að gera það í Teamcity. Þú getur hlaðið upp lykla með HÍ eða bara afritað þá í möppu sem þú festir á myndbandsdokkarinn. Síðan notarðu takkana alls staðar fyrir ssh verkefni, scp eða rsync. Svo auðvelt, svo vel hugsað - ég vildi óska ​​að aðeins þeir myndu bjóða upp á gröfina fyrir þá.

Hafa umsjón með ssh umboðsmanni beint fyrir smíðar þínar

Hefur þú einhvern tíma átt í vandræðum með að fá aðgang að einkaskemmtunum þínum þegar þú settir upp með tónskáldinu? Hefur þú einhvern tíma haft þörf fyrir að gefa út ssh skipanir í smíðunum þínum? Allan tímann? Rétt!
A Teamcity byggja eiginleiki gerir þér kleift að bæta við ssh persónuskilríkjum til að byggja upp. Það býr síðan til ssh-umboðsmann, sem gerir þér kleift að nota ssh í inline forskriftum. Þetta er svo auðvelt í notkun og hreinsað. Af hverju datt engum í hug í fyrsta lagi?

„Veldu skrá“ - skjöl

Ég get ekki talið upp alla þá hluti í HÍ sem láta þér líða eins og: „Ó! Það er handhægt “. Hér er aðeins eitt dæmi. Þegar þú vísar til config skráa í viðbætur í bambus þarftu alltaf að muna hlutfallslega slóðina og hver var núverandi vinnuskrá aftur? Í Teamcity smellir þú á pínulitla táknið við hliðina á stillingarstillingunum og uppsveiflu: það er listi yfir nýjasta upprunatréð frá geymslunni þinni.

Fylgstu með prófunum þínum, lifandi og beina!

Gríðarlegur sársauki við bambus er prófunarskýrslur og byggja rannsóknir á annálum. Þegar allt fer úrskeiðis þarftu að fletta að óformóttri, ekki auðkenndri byggingaskrá til að finna hvaða prófmál mistókst. Það vantar samþættingu fyrir verkfæri eins og phpunit eða aðra sameiginlega prófhlaupara neyða þig til að gera það af og til í bambus.

Framvindu prófa er sýnd í beinni meðan á byggingu stendur

Í Teamcity eru prófin skráð í HÍ í byggingarniðurstöðum þínum. Það dregur út núverandi hlaupapróf, framvinduna og prófárangurinn beint frá framleiðslunni á stjórnlínunni. Ef þú notar phpunit, það eina sem þú þarft að gera er að bæta --log-teamcity við phpunit símtalið þitt og Teamcity mun sækja niðurstöðurnar í beinni útsendingu frá annálum. Þetta er besti árangursvísir sem ég hef haft.

Mér datt aldrei í hug…

… Að ég væri í LOVE með stöðugan samþættingarþjón framarlega. Jetbrains, gerðu eitthvað fyrir myndina þína. Þú átt skilið að vera konungur CI-þjóna, alvarlega.

Fyrirvari: Jetbrains borguðu hvorki né hvatti mig til að skrifa þetta verk.

Ég vildi að þetta væri hrós um Teamcity, ekki gífuryrði um bambus. Ef þú hefur áhuga á verki um „hvað er rangt við bambus“ láttu mig vita! Ég verð feginn að útfæra það.

Vinsamlegast fylgdu mér á twitter!