1. Atlassian Cloud
DevOps s Jira, Bitbucket, Confluence...
Martin Cvrček s otázkami na Františka Lelka
2. Business -> Development -> QA -> Security -> Operations -> Customer
• Zkratka Development - Operations
• Do povědomí od 2009 (devopsdays Belgie)
• Původní cíl - rychle produkovat SW (automatizace)
• DevOps je (min od 2020) „kultura“
Mindset + Tools + Skills
• Snaha vidět v DevOps metodiku
• Enterprise DevOps respektuje komplexní prostředí
Co je DevOps
Definice https://en.wikipedia.org/wiki/DevOps a https://cs.wikipedia.org/wiki/DevOps
16. • 3 hlavní pilíře - lidé, procesy a technologie
• Vytvoření jednoho integrovaného týmu, který vyvíjí aplikaci
a zároveň ji nasazuje a podporuje v produkci.
• Obsahuje ideální Agile,
členové týmu 100% delegováni.
• Členové týmu respektují Security a QA.
Ideální DevOps
Zdroj zkušeností https://devops.com
18. 18
DevOps Best Practices
Agilní Epic je soubor práce, který lze rozdělit na konkrétní úkoly (User
Stories) na základě požadavků koncových uživatelů. Epic je důležitým
objektem pro agilní i DevOps týmy.
https://www.atlassian.com/devops/what-is-devops/devops-best-
practices
Typy DevOps teamů
https://www.atlassian.com/devops/frameworks/team-structure
19. 19
Jaký DevOps toolchain použít?
Správný DevOps toolchain (nástrojový řetězec) pomáhá vývojářům a
provozu spolupracovat v průběhu celého životního cyklu produktu a
řeší základy DevOps včetně průběžné integrace (CI), průběžného
dodávání (CD), automatizace a spolupráce.
https://www.atlassian.com/devops/devops-tools/choose-devops-tools
20. 20
Bitbucket - DevOps pipeline (CI/CD)
DevOps pipeline je sada automatizovaných procesů, které umožňují
developers a operations spolupracovat na vytváření a nasazování kódu
do testovacího a produkčního prostředí, využívat automatizaci a
zvyšovat rychlost nasazení.
https://www.atlassian.com/devops/devops-tools/devops-pipeline
21. Jira Cloud + Bitbucket.org
Ukázka zobrazení úpravy související s Jira issue
Lidé:
Není možné, aby tým programátorů bojoval s operačním týmem a ten se síťovým týmem. Je důležité, aby všichni sdíleli své poznatky o produktu a zajistily tak, že práce bude plynule přecházet z jednoho týmu na druhý až ke poslední osobě - klientovi.
Procesy:
Procesy by totiž neměly stát v cestě lidem, kteří se snaží dělat věci rychleji a efektivněji.
Technologie:
Každý krok procesu je třeba automatizovat pomocí nástrojů, které musí splňovat mnoho požadavků, plnit svou práci na 100% a navzájem dokonale spolupracovat.
Vývojář si „vyzvedne“ práci v backlogu, většinou status „ToDo“.
Následně posune issue do stavu „In Progress“
Podle povahy issue si vytvoří branch v BitBucketu (bug, feature).
Pracuje ve svém prostředí např. editor Idea a práci Commituje (verzuje) a posílá (Push) do Bitbucketu.
Vytvoří požadavek na Pull request, aby si nechal zkontrolovat svůj kód, který má být např. zařazen do release.
Po schválení se provede Merge např. do Masteru.
Vývojář může ukončit práci na issue, posune ho do stavu „Test“ nebo „Closed“.
Pull request je funkce, která vývojářům usnadňuje spolupráci pomocí Bitbucket. Poskytují uživatelsky přívětivé webové rozhraní pro projednávání navrhovaných změn před jejich začleněním do oficiálního projektu.
3 hlavní oblasti, které se musí sladit, aby bylo možné DevOps i reálně implementovat v organizaci.
Lidé, procesy a technologie.
VCS - Version Control Systém
CI/CD řetězce jsou určeny k dodávání malých iterativní změn do produkce, při kterých je snadné identifikovat chyby a v případě potřeby je vrátit zpět. Každá ze změn musí vždy projít sérií automatizovaných testů, které výrazně snižují riziko výskytu chyb po nasazení.