Crear canalizaciones con CodePipeline

Automatización de despliegues en AWS

Dunieski Otano

Amazon Web Services Solutions Architect

Canalizaciones multietapa

vista previa de vídeo: canalización multietapa con artefactos, aprobación y EventBridge

Automatización de despliegues en AWS

Anatomía de una canalización de CodePipeline

  • Una canalización es una secuencia de etapas
  • Cada etapa contiene grupos de acciones con acciones
  • Las acciones producen y consumen artefactos (almacenados en S3)
  • La siguiente etapa consume los artefactos como entrada

anatomía de CodePipeline: etapas, acciones y artefactos

Automatización de despliegues en AWS

Conectar origen, compilación y despliegue

  • Etapa de origen: CodeCommit detecta un push y genera el artefacto de origen
  • Etapa de compilación: CodeBuild recibe el origen y genera el artefacto de compilación
  • Etapa de despliegue: CodeDeploy recibe el artefacto y despliega al destino
  • La canalización se ejecuta de extremo a extremo en cada push

canalización de 3 etapas

Automatización de despliegues en AWS

Acciones de aprobación manual

  • Aprobación manual: control humano entre etapas
  • La canalización se pausa hasta que alguien apruebe o rechace
  • Uso común: control entre preproducción y producción
  • El estado muestra «Waiting for approval»; admite notificaciones SNS

aprobación manual: responsable revisando la canalización

Automatización de despliegues en AWS

Transiciones de etapa y control de la canalización

  • Habilitar/deshabilitar transiciones entre etapas
    • Deshabilita para pausar la canalización en un punto concreto
  • Reintentar acciones con error sin reiniciar la canalización
  • Publicar cambio manualmente para impulsar una revisión específica

 

controles de transición de etapas en CodePipeline: reintentar y publicar

Automatización de despliegues en AWS

Notificaciones de eventos de la canalización

anatomía de CodePipeline: etapas, acciones y artefactos

  • CodePipeline envía eventos a Amazon EventBridge
  • Eventos: canalización iniciada, etapa correcta, etapa con error
  • Crea reglas de EventBridge para enrutar eventos a destinos
    • Temas SNS para alertas por email/SMS
    • Funciones Lambda para automatización personalizada
  • El detalle incluye nombre de canalización, de etapa y motivo del fallo
Automatización de despliegues en AWS

Diseño de canalización multientorno

  • Una sola canalización despliega en varios entornos
  • Compila una vez y promociona: Dev -> Staging -> Approval -> Prod
  • El mismo artefacto recorre todos los entornos
  • Lo que pruebas es exactamente lo que despliegas

canalización multientorno: dev, staging, aprobación, prod

Automatización de despliegues en AWS

¡Vamos a practicar!

Automatización de despliegues en AWS

Preparing Video For Download...