Hlavní navigace

Názor k článku Kontinuální integrace: lék na lidské chyby v deploymentu od mrk - Continuous Integration je neco trosicku jineho nez-li automaticky...

Článek je starý, nové názory již nelze přidávat.

  • 3. 11. 2016 14:32

    mrk (neregistrovaný) ---.dyn.telefonica.de

    Continuous Integration je neco trosicku jineho nez-li automaticky build/regression testing/deployment testing.

    CI by mel kdykoliv umoznit stiskem jedineho tlacitka deployment do produkce v zadouci kvalite. To vyzaduje nemit zadny branche, nybrz pouzivat "feature toggle" - rozdelane featury, ktere nejsou vhodne do produkce, musi byt umozneno vypnout jednoduchou konfiguraci deploymentu. Tak se kuprikladu delaj A/B testy v Google, FB nebo Uberu. Pak prirozene muze byt problem, kdyz se objevi bug nezachycen regresnimi, integracnimi nebo konformnimi testy. V praxi je pak vicero verzi services a klienti vedi, ktere verze muzou pouzivat (e.g. Uber ma vicero verzi pro ruzne A/B featury, pak na mobilu klienti pujdou na service, ktera jejich app verze umozni; predpoklad je, ze updates se stahnout samotny).

    Naproti tomu kdyz mate feature branches, tyhle neumoznuji CI. Pak muzete mit treba vicero buildu za den, pro kazdej branch jeden, a zpoustet automaticke testy, no a do deploymentu dat kuprikladu posledni funkcni verzi (dodelanou), nebo verzi s nejmin zavaznimi selhanimi testu.

    Tohle jsou drobny detaily, akorat hodne dulezity, nebot pak development vypada docela jinak - pri CI se muze commitovat primo do masteru a proste se afektovanej modul oznaci jako neprodukcni. Pri feature branches se pak musi delat merge hell a to proste zpomaluje vyvoj.