Introducción a CI/CD en AWS

Automatización de despliegues en AWS

Dunieski Otano

Amazon Web Services Solutions Architect

Ciclo continuo

Automatización de despliegues en AWS

Conoce al instructor

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

Automatización de despliegues en AWS

Por qué importa CI/CD

  • Los despliegues manuales son lentos y propensos a errores
  • Quien desarrolla sube código y espera a que alguien lo despliegue
  • CI/CD automatiza el camino del código a producción
  • Lanzamientos más rápidos y con menos errores

 

ci_cd

Automatización de despliegues en AWS

El ciclo de vida de CI/CD

  • Source: Se confirma código en un repositorio
  • Build: Se compila el código e instala dependencias
  • Test: Pruebas automáticas validan la build
  • Deploy: Se publica la aplicación; los artefactos pasan entre etapas

Ciclo de vida

Automatización de despliegues en AWS

Resumen de AWS Code services

  • CodeCommit: Control de versiones (repositorio Git)
  • CodeBuild: Compilar, probar y empaquetar
  • CodeDeploy: Publicar en EC2, Lambda o ECS
  • CodePipeline: Orquesta todas las etapas

   

 

Imagen de servicios Code

Automatización de despliegues en AWS

CI vs entrega continua vs despliegue continuo

  • Continuous Integration (CI): Integrar, compilar y probar en cada push
  • Continuous Delivery: Despliegue automático a staging; aprobación manual para prod (lo más común)
  • Continuous Deployment: Cada build aprobada se publica automáticamente

 

tres niveles

Automatización de despliegues en AWS

Cómo CodePipeline lo orquesta todo

cp

  • CodePipeline conecta etapas en secuencia
  • Cada etapa contiene una o más acciones
  • La canalización se activa automáticamente con cambios en el origen
  • Si alguna etapa falla, la canalización se detiene
Automatización de despliegues en AWS

Un ejemplo de pipeline real

  • Source: Quien desarrolla hace push a CodeCommit
  • Build: CodeBuild ejecuta pruebas y empaqueta un ZIP
  • Staging: CodeDeploy publica en staging
  • Aprobación => Producción: La persona líder aprueba y luego despliega a prod

 

Ejemplo de pipeline real

Automatización de despliegues en AWS

¡Vamos a practicar!

Automatización de despliegues en AWS

Preparing Video For Download...