Documentação da Pipeline CI/CD usando GitHub Actions
Este documento descreve o fluxo de pipeline CI/CD usando GitHub Actions para um projeto que segue determinados padrões de branch.
Fluxo de Pipeline CI/CD
Fluxograma
1. Envio de Alterações pelo Desenvolvedor
O desenvolvedor envia uma alteração para o repositório, seguindo os padrões de branch:
feature/xpto
bugfix/xpto
hotfix/xpto
2. GitHub Actions para Testes e Build Maven
Ao enviar a alteração, inicia-se uma GitHub Action que realiza o seguinte:
- Executa testes Maven.
- Realiza build Maven.
- Realiza análise no SonarQube.
3. Pull Request Automático para a Branch Develop
Se os passos anteriores forem bem-sucedidos, um Pull Request automático é aberto da branch enviada para a branch develop
.
4. GitHub Actions para a Branch Develop
Uma vez aprovado o Pull Request para a branch develop
, inicia-se uma nova GitHub Action com os seguintes steps:
- Build e teste Maven.
- Build da imagem Docker.
- Push da imagem Docker no Nexus Repository.
- Deploy no Kubernetes via kubectl.
- Criação/mapeamento de rota no gateway.
- Abertura de Pull Request para a branch de release se todos os steps anteriores forem bem-sucedidos.
Convenções de Nomenclatura de Branch
Certifique-se de seguir as convenções de nomenclatura de branch apropriadas para garantir que o fluxo da pipeline seja eficaz.
feature/xpto
: Para novas funcionalidades.bugfix/xpto
: Para correção de bugs.hotfix/xpto
: Para correção de problemas críticos em produção.
Isso conclui a documentação da pipeline CI/CD baseada no GitHub Actions para o projeto.