Devops, Infraestrutura ti

Entenda e que é CI/CD

CI/CD Continuous Integration/Continuous Delivery, funciona como uma automação no ciclo de vida do desenvolvimento de uma aplicação, desenvolvida por uma equipe, que visa aumentar a qualidade e segurança nas mudanças e alterações do projeto. Por isso esse conceito está muito ligado com metodologias ágeis. Outro nome muito utilizado para CI/CD é “Pipelines”.

Aprenda mais sobre estes conceitos a seguir!

CI – INTEGRAÇÃO CONTÍNUA

Integração contínua é quando as alterações do código de uma aplicação são desenvolvidas, testadas e consolidadas com frequência em repositório compartilhado. Assim podemos evitar conflitos em ramificações do projeto.

Quando o desenvolvedor envia as alterações para o repositório deve ser iniciada de forma automática a compilação e verificação dos pacotes, verificação de código e falhas de segurança, e a aplicação da camada de testes, em caso de falhas, é reportado para a equipe que faz parte do projeto, e em caso de sucesso a integração foi bem sucedida. Lembrando que nenhuma etapa é obrigatória e podem ser incluídas quantas etapas forem necessárias de acordo com as necessidades de cada projeto.

CD – ENTREGA CONTÍNUA

Entrega e ou Implantação contínua, é a automatização da geração de versão e ou a consolidação das alterações em um ambiente produtivo, esse passo pode ser implantado de diversas formas e deve ser realizado após a integração contínua. Com a automação desse processo podemos evitar várias falhas que são comuns quando aplicadas manualmente.

Continuous Integration

GITLAB-CI

Gitlab-CI é uma das ferramentas que podemos utilizar para a configuração e aplicação das pipelines. Com um simples scripts podemos executar todas as camadas necessárias para validar o projeto.

Para iniciar o CI em um projeto do Gitlab precisamos apenas criar um arquivo no repositório com o nome de gitlab-ci.yml e realizar um “commit”, exemplo do conteúdo do arquivo:

stages:

– test

hello:

stage: test

services:

– bash

script:

– echo ‘Hello World’

Depois disso no menu de CI/CD->Pipelines:

CI/CD - Pipelines

É possível ver a job que foi executada:

Guitlab CI

Toda a documentação está no portal do próprio gilab: https://docs.gitlab.com/ee/ci/quick_start/.

CI-KOOL

Se você já utiliza kool-dev no desenvolvimento de um projeto já montamos alguns scripts para facilitar a aplicação do Gitlab-ci no seu projeto: https://ci.kool.dev/laravel/gitlab/. Esses scripts são específicos para um projeto que utiliza Laravel, mas podem ser facilmente adaptados para qualquer framework PHP.

Para saber sobre o kool acesse: https://kool.dev/.

No geral, quando surge a necessidade de trabalhar em uma equipe grande em um determinado projeto, é interessante que adotem o uso do CI/CD, uma vez dado o fluxo de trabalho acelerado e a facilidade de integração dos novos códigos inseridos. Além disso, há a possibilidade de ter seu ambiente de produção ativo em uma parte do repositório do projeto, em atualização segura constante. O CI/CD estão disponíveis no GitHub(Github-actions) e também no GitLab(Gitlab-ci). Portanto, realmente vale muito a pena aprender mais sobre essas ferramentas que irão elevar em outro degrau o seu desenvolvimento.

Confira o Manual do Dev sobre CI/CD no Fireplay

Conheça o redator desse conteúdo

Jean Michel Leite – Formado em Ciência da computação Anhanguera Bauru-SP, desenvolvedor full stack na Firework.

Jean Leite

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *