Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Automatizace deployment pipeline

Automatizace deployment pipeline

Aleš Roubíček

September 27, 2018
Tweet

More Decks by Aleš Roubíček

Other Decks in Technology

Transcript

  1. Akcelerace businessu • IT je základní kompetencí moderních podniků •

    Neefektivní IT = neefektivní business • Risk management
  2. Akcelerace businessu • Lead Time (roky &> měsíce &> dny

    &> hodiny) • Delivery Lead Time (dny &> hodiny &> minuty) • Time To Recovery (dny ->> sekundy)
  3. Continuous Integration • Každý vývojář aspoň jednou denně pushne své

    změny přímo do integrační větve • Automatizace testů na všech úrovních systému • Rapidní zpětná vazba, že vše spolu funguje • Snižování integračního rizika • Feature branche nemají životnost delší než 1 den • Žádné Pull Requesty nebo Gated commity
  4. Trunk Based Development • Vývoj všeho probíhá v jediné společné

    větvi • Větve mohou vznikat v době releasu a patche se vždy cherrypickují z trunku, nikdy se v nich nevyvíjí • Jediný zdroj pravdy, snížený cognitivní overhead
  5. DevOps • kultura úzké spolupráce Dev a Ops lidí •

    Ops jsou součástí teamu od začátku vývoje • Teamy jsou zodpovědné za celý životní cyklus systému
  6. Continuous Delivery • Totální automatizace všech delivery procesů • Preventivní

    prohlídky, přísná kontrola kvality • Každá změna, která projde kontrolou kvality, je potenciálně nasaditená do produkce “stiskem jediného tlačítka” • Rollback “stiskem jediného tlačítka” • Vychází z Lean Manufacturing
  7. Continuous Delivery • Každá změna, která projde kontrolou kvality, je

    potenciálně nasaditená do produkce “stiskem jediného tlačítka” • Rollback “stiskem jediného tlačítka” • Vychází z Lean Manufacturing • Preventivní prohlídky, přísná kontrola kvality • Totální automatizace všech procesů
  8. Continuous Deployment • Každá změna jde přímo do produkce •

    Zpětná vazba z produkce pomocí monitoringu • Potřeba imunitního systému v samotném systému • Feature Toggles, Branch by Abstraction • Chaos Engineering • A/B testování • Neustálé flow experimentů a hodnoty