Ci Cd

CI/CD Pipeline - C-Suite

Visão Geral

Este documento descreve o pipeline de CI/CD para o ecossistema C-Suite, incluindo GitHub Actions e GitLab CI.

Estrutura

GitHub Actions

GitLab CI

Pipeline Principal

Etapas

  1. Lint e Code Quality
  2. Flake8 para linting
  3. Black para formatação
  4. isort para ordenação de imports
  5. Mypy para type checking (opcional)

  6. Testes

  7. Testes unitários e de integração
  8. Cobertura de código
  9. Upload de relatórios de cobertura

  10. Build Docker

  11. Build automático de imagens Docker
  12. Push para GitHub Container Registry (ghcr.io)
  13. Cache de layers Docker

  14. Security Scan

  15. Trivy para scan de vulnerabilidades
  16. Upload de resultados para GitHub Security

  17. Deploy

  18. Deploy automático para staging (branch develop)
  19. Deploy manual para produção (branch main)

Configuração

GitHub Actions

Secrets Necessários

Nenhum secret adicional necessário para builds básicos. O GITHUB_TOKEN é fornecido automaticamente.

Variáveis de Ambiente

GitLab CI

Variables Necessárias

Uso

GitHub Actions

O pipeline é executado automaticamente em:
- Push para main ou develop
- Pull requests para main ou develop

Para build manual:

# Via GitHub UI: Actions > Docker Build (Manual) > Run workflow

GitLab CI

O pipeline é executado automaticamente em:
- Push para qualquer branch
- Merge requests

Apps Suportados

Módulos Comuns

O pipeline testa automaticamente os módulos comuns:
- common_errors
- common_health
- common_api_versioning
- common_logging
- common_cache
- common_auth
- common_validation
- common_rate_limit
- common_audit
- common_data_masking
- common_secrets
- common_db_pool
- common_testing
- core_config

Deploy

Staging

Production

Monitoramento

GitHub Actions

GitLab CI

Troubleshooting

Build Falha

  1. Verificar logs do job que falhou
  2. Verificar dependências e versões
  3. Verificar configuração de secrets/variables

Deploy Falha

  1. Verificar conectividade com ambiente
  2. Verificar credenciais de deploy
  3. Verificar configuração do ambiente

Próximos Passos

  1. ✅ Pipeline básico criado
  2. ⏳ Adicionar testes E2E automatizados
  3. ⏳ Adicionar rollback automático
  4. ⏳ Adicionar notificações (Slack, email)
  5. ⏳ Adicionar métricas de deploy
  6. ⏳ Adicionar blue-green deployment
  7. ⏳ Adicionar canary releases

🔊 Text-to-Speech

1.0x
1.0
Pronto para reproduzir