Módulo 5
CI/CD com GitHub Actions
Pipeline é o coração operacional de DevOps. Você vai construir CI que roda lint, testes e build em cada PR, com cache eficiente, e CD que publica imagens imutáveis no GHCR usando autenticação sem senha (OIDC), ambientes com aprovação e rollback documentado. E, principalmente, vai aprender a depurar pipeline quebrado com método.
0/8 itens concluídos
O que você vai saber fazer
- Escrever workflows com triggers, jobs e matrizes
- Acelerar builds com cache correto
- Gerenciar secrets e usar OIDC em vez de chave estática
- Publicar imagens com tag imutável e metadados
- Executar rollback rápido e confiável
Pré-requisitos
- • Módulo 3 e 4 concluídos
Tópicos
Entrega do módulo
CI obrigatório em PR e publicação de imagens com tag imutável no GHCR, com job de rollback disponível.
Checklist
- ☐ Workflow de PR rodando lint, testes e build em menos de 5 minutos
- ☐ Cache de dependências ativo e efetivo
- ☐ Imagem publicada com tag da versão e digest registrado
- ☐ Permissões do token mínimas (contents: read)
- ☐ Procedimento de rollback testado ao menos uma vez
Módulo bloqueado
Aprove o exame do módulo anterior para liberar este conteúdo.
Aulas
5 aulas neste módulo
- 1Anatomia de um workflow: triggers, jobs e steps40 min · GitHub Actions, YAMLIntermediário+25 XP
- 2Cache, testes e pipeline rápido40 min · GitHub Actions, cache, service containersIntermediário+25 XP
- 3Secrets, OIDC e permissões mínimas40 min · GitHub Actions, OIDC, AWS IAMAvançado+25 XP
- 4Build e publicação de imagem no GHCR com tag imutável45 min · GitHub Actions, Buildx, GHCRAvançado+25 XP
- 5Deploy, rollback e depuração de pipeline quebrado45 min · GitHub Actions, Docker, actAvançado+25 XP
Prática
Laboratórios do módulo
CI completo em PR: lint, testes e build
IntermediárioImpedir merge de código que não passa em qualidade, em menos de cinco minutos.
Ver passo a passoPublicar imagem no GHCR com tag imutável
AvançadoGerar imagem versionada com metadados e registrar o digest.
Ver passo a passoRollback automático em falha de saúde
AvançadoFazer o pipeline reverter sozinho quando o deploy não fica saudável.
Ver passo a passo
Troubleshooting típico
Quando quebra
Sintoma: pipeline verde no PR e vermelho na main. Investigação: o job da main roda testes de integração que dependem de service container e a variável de conexão está diferente. Causa raiz: configuração divergente entre workflows. Correção: extrair etapas comuns para workflow reutilizável e usar as mesmas variáveis.
No CloudShop
Automatizar build, teste e publicação da imagem do CloudShop a cada merge.
Perguntas de entrevista
- O que deve rodar em cada PR e o que só em main?
- Como você evita usar chaves de nuvem de longa duração no CI?
- Como faria rollback de um deploy ruim em menos de cinco minutos?