Do curso: GitHub Actions: Formação Básica
Planejando um pipeline de CI /CD
Do curso: GitHub Actions: Formação Básica
Planejando um pipeline de CI /CD
Vamos então agora planejar um pipeline de CI/CD. O que nós precisamos para planejar o nosso pipeline de CI/CD? Basicamente, precisamos definir o nosso processo. E, com isso, vamos definir então o primeiro passo do nosso pipeline, que seria o processo de build. Dentro do processo de build, nós contamos com algumas coisas, como compilação, testes unitários, análise de qualidade e geração de artefato. Podemos conter mais algumas coisas dentro de um processo de build, mas geralmente este é o mínimo necessário para que isso tudo funcione. Então tem compilação, testes unitários, análise de qualidade e geração de artefato. Tudo isso é crucial para esse pipeline seguir adiante. Quando nós vamos olhar para o processo de deployment, o que mais se torna necessário também? Quais serão os ambientes que nós vamos realizar este nosso deployment? Será necessária a aprovação de alguma pessoa? Vai ser necessário também criar recursos de infraestrutura? E configurações de ambiente precisarão ser feitas? E também como será realizada a implantação da nossa aplicação. Esses aqui também são os passos mais comuns que nós precisamos nos atentar quando estamos desenvolvendo o processo de deployment da nossa aplicação. Ambientes são essenciais, é importante você saber se vai ter alguma aprovação ou não, isso geralmente entra no ambiente de produção ou algum ambiente mais controlado. Criação de recursos de infra também é bastante comum quando você está usando o cloud. Configuração de ambiente também, temos vários casos muito interessantes de configuração de ambiente para ambientes de dev ou para caso de blue/green deployment, entre outras coisas. E a implantação da aplicação em si, que é onde você vai colocar os seus binários, aplicar algumas configurações extras necessárias. Pontos importantes durante este planejamento. Nós podemos ter alguns processos extras, que seriam o quê? Testes de fumaça nesse ambiente, testes de segurança e também o monitoramento da nossa aplicação. O teste de fumaça é um teste bem simples, basicamente para você saber se a sua aplicação subiu ou não. Então você vai lá, testa o endpoint retornou 200, está tudo certo. Testes de segurança, entram para o teste de vulnerabilidade, Pentest, entre outras coisas. E o monitoramento também, que é essencial para que você possa saber da saúde da sua aplicação, se está tudo certo, se não está, se está tendo problemas, se está encontrando bug, para que você possa ser proativo, ser proativa neste cenário. E então, como vai ser o nosso processo nesse nosso curso de GitHub Actions? Primeiro, nós teremos o processo de build para uma aplicação simples. Nós teremos, em segundo passo, a configuração desse ambiente e, em terceiro, nós teremos o deployment. Então nós vamos seguir aqui com um exemplo simples de pipeline com build, configuração de ambiente e também deployment da nossa aplicação.