Uma pipeline de CI/CD é uma “esteira de automação” que garante que o código saia do computador do desenvolvedor e chegue ao ambiente de produção de forma rápida, padronizada e segura.
Ao realizar um git push para o repositório, o GitLab CI/CD inicia automaticamente um fluxo de trabalho que compreende:
Toda a inteligência da pipeline reside no arquivo .gitlab-ci.yml na raiz do projeto. Ele organiza o trabalho em:
Para detalhes técnicos, consulte a Documentação Oficial do GitLab.
A pipeline do Gitlab é dividida em Estágios (test, build, deploy) e em cada estágio, um ou mais jobs são executados (ex: production:test-python, production:build-k8s e production:deploy-k8s).
Para evitar a repetição de código (“Don't Repeat Yourself”), utilizamos os CI/CD Components. Em vez de configurar cada passo do zero, você importa blocos prontos da nossa biblioteca central: TCE.Templates.
Pense nos componentes como funções: você os chama no seu arquivo YAML e passa inputs (parâmetros) para definir comportamentos específicos (ex: versão do Python, porta do serviço, etc).