A integração contínua e deployment contínuo (CI/CD) é uma técnica que visa testar e mesclar artefatos de software continuamente de maneira prática e fácil.
Todo o trabalho a cerca desta técnica visa a automação completa de processos de teste e entrega de software.
Visto isso, o projeto aonde está sendo planejado implantar esta técnica precisa ser capaz de suportar estes fluxos.
Isso quer dizer que é recomendável que o projeto siga algumas diretrizes, sendo elas:
-
Qualquer variável do projeto, como apontamentos para bancos de dados, caminhos de arquivos, ou bibliotecas externas devem ser configuráveis via variável de ambiente.
Isso é necessário para que as pipelines de CI/CD sejam capazes de montar os ambientes de teste e/ou deploy automaticamente, utilizando as variáveis de ambiente, sem precisar alterar arquivos manualmente.
Essas variáveis de ambiente devem ser configuradas via alguma funcionalidade que facilite sua alteração, como arquivos.env
por exemplo. -
É recomendado que o projeto possua testes automatizados
Uma parte importante do CI/CD é testar o código que está sendo mesclado e, para isso, é preciso que o projeto possua testes automatizados, sejam unitários ou de integração.