terça-feira, 28 de novembro de 2023

Continous Integration

Continous Integration


    "Envia essas alterações, urgente!!!" ou "Libera essa versão para que eu possa testar!!!"

    Quem nunca como Desenvolvedor já escutou frases nesse sentido.
    No mundo em que vivemos a tecnologia veio para nos auxiliar e também para nos deixarmos mal-acostumados, tanto nós como os nossos clientes queremos tudo para ontem.

    Nessas horas empresas que não possuem processos bem definidos no ciclo de desenvolvimento sofrem muito, pois as chances de entregarem um software com falhas aumentam e muito.

    É por isso que venho escrever hoje. Uma das ações para mitigarmos tais erros é criarmos uma "esteira de desenvolvimento", onde possamos garantir a entrega final com o mínimo possível (ou zero) de falhas.
    O nome desses processos que vou comentar são: Continous Integration e Continous Delivery ou CI/CD.
    Nesse artigo começaremos falando sobre o CI.
    Continous Integration, como o próprio nome diz, é a Integração Contínua, mas isso não é integração entre sistemas que você está pensando (embora seja possível configurar um step para isso).
    Esse processo condiz em deixar sua "esteira de desenvolvimento" o mais automatizado possível e o mais confiável.
    Imagina em um cenário onde o desenvolvedor compila o fonte do software, copia em uma pasta e disponibiliza ao Testador do seu time (sim existem empresas que ainda fazem isso).
    O Continous Integration veio para automatizar o maior número de passos (step), desde a codificação até o ponto onde o software possa estar pronto para ser liberado pelo processo de Continous Delivery (abordaremos no próximo post).
    Abaixo segue uma imagem de uma "esteira de desenvolvimento" com CI/CD.
    No Delphi conseguimos utilizar algumas ferramentas para montarmos um ambiente de CI/CD, são elas:
  • Delphi (Nem preciso falar do seu poder)
  • GitLab ("Fortaleza" que guardará seus códigos)
  • Jenkins (Esse é "O Cara")
O GititLab para quem não conhece é o servidor onde armazenamos os fontes do nosso software. Ele pode ser substituído pelo GitHub ou SVN, isso dependerá da necessidade de cada empresa.
O Jenkins é um "Garçom", isso mesmo, é a ferramenta que configuramos os jobs, ou step, que o nosso processo de CI precisa. Com o Jenkins conseguimos integrar com diversas ferramentas, basta adicionarmos os plugins necessários.

    

    Abaixo demonstro em vídeo como que trabalho em meus projetos utilizando essas ferramentas.
Lembrando que cada empresa tem suas necessidades, não se limitem apenas ao que o vídeo demonstra.



   E aí o que acharam comentem no vídeo ou aqui no blog se vocês utilizam alguma esteira de desenvolvimento e quais as ferramentas.
   

Até a próxima.

Nenhum comentário:

Postar um comentário

Postagem em Destaque

Configurando o Projeto Delphi para o SonarQube

  No post anterior expliquei como instalar e configurar o SonarQube com o plugin do Delphi . Neste post vamos configurar nosso projeto Del...

As mais visitadas