Úvod do CI/CD na AWS

Automatizace deploymentů na AWS

Dunieski Otano

Amazon Web Services Solutions Architect

Nepřetržitý cyklus

Automatizace deploymentů na AWS

Kdo tě kurzem provede

dunieski-otano-instructor-with-aws-certifications.png

Automatizace deploymentů na AWS

Proč je CI/CD důležité

  • Manuální nasazení jsou pomalá a náchylná k chybám
  • Vývojáři nahrají kód a pak čekají, až ho někdo nasadí
  • CI/CD automatizuje cestu od kódu do produkce
  • Rychlejší vydání, méně chyb

 

ci_cd

Automatizace deploymentů na AWS

Životní cyklus CI/CD

  • Source: Kód se commitne do repozitáře
  • Build: Kód se zkompiluje, nainstalují se závislosti
  • Test: Automatizované testy ověří sestavení
  • Deploy: Aplikace se nasadí; artefakty procházejí jednotlivými fázemi

Životní cyklus

Automatizace deploymentů na AWS

Přehled AWS Code služeb

  • CodeCommit: Správa verzí (Git repozitář)
  • CodeBuild: Kompilace, testování a balení
  • CodeDeploy: Nasazení na EC2, Lambda nebo ECS
  • CodePipeline: Řídí všechny fáze dohromady

   

 

Obrázek služeb Code

Automatizace deploymentů na AWS

CI vs. continuous delivery vs. continuous deployment

  • Continuous Integration (CI): Sloučení, sestavení a testování při každém push
  • Continuous Delivery: Automatické nasazení do staging prostředí; do produkce manuální schválení (nejběžnější)
  • Continuous Deployment: Každé úspěšné sestavení jde automaticky do provozu

 

třívrstvý model

Automatizace deploymentů na AWS

Jak CodePipeline řídí celý proces

cp

  • CodePipeline propojuje fáze v pořadí
  • Každá fáze obsahuje jednu nebo více akcí
  • Pipeline se spustí automaticky při změně zdroje
  • Pokud některá fáze selže, pipeline se zastaví
Automatizace deploymentů na AWS

Příklad pipeline z praxe

  • Source: Vývojář nahraje kód do CodeCommit
  • Build: CodeBuild spustí testy a zabalí ZIP
  • Staging: CodeDeploy nasadí do staging prostředí
  • Approval => Production: Vedoucí týmu schválí nasazení do produkce

 

Příklad reálné pipeline

Automatizace deploymentů na AWS

Pojďme cvičit!

Automatizace deploymentů na AWS

Preparing Video For Download...