No último post que publiquei da amizade que fiz com o ChatGPT, falei-vos por alto de CI/CD e hoje decidi escrever mais um post contando um pouco mais da minha aventura realizada no meu estágio da universidade e falando das minhas experiências.
Não vou dizer em qual empresa foi porque para o contexto não interessa muito, mas vou contar a história de como aprendi CI/CD e em que contexto utilizei. Primeiro, vou dar uma descrição sucinta do negócio. Tratava-se de uma plataforma online na área da certificação energética das casas. O negócio começa com o cliente que se regista na plataforma e regista as suas propriedades. O cliente pede uma recolha para a propriedade pagando uma quantia pelo serviço e agenda essa recolha com um inspetor. O inspetor aceita a recolha e depois faz a recolha na casa da pessoa retirando os dados necessários para a recolha através de uma aplicação móvel da tal empresa e de seguida envia os dados para o servidor que vai gerar a etiqueta energética sendo revista por um especialista técnico que aprova ou reprova a recolha. Sem dizer qual era a empresa descrevi-vos o negócio em que surgiu o CI/CD.
O objetivo do meu estágio foi implementar novas funcionalidades no servidor de backend e melhorar funcionalidades existentes, melhorar a documentação e implementar o procedimento de CI/CD.
Então o que é o CI/CD ?
Continuous Integration e Continuous Deployment, vulgo CI/CD, é uma metodologia que pode ser utilizada para garantir a qualidade de código através de testes automatizados de integração e testes unitários(ver mais em CI/CD | O que é CI/CD? (redhat.com). Isto permite agilizar o processo de entrega das funcionalidades ao cliente.
CI/CD funciona através de um repositório Git em que quando é dado push para o repositório remoto é gerado uma espécie de evento que vai chamar um servidor remoto que vai realizar um conjunto de testes à vossa aplicação ou API. Depois desses testes pode ser chamado funções que vão carregar as novas funcionalidades para o vosso servidor.
Aqui podem ver um esquema do funcionamento do CI/CD:
E tiveste que pagar alguma coisa para isso ?- perguntam vocês.
No CircleCI, projetos open source públicos que utilizem o sistema Linux têm direito a um certo número de créditos gratuitos por mês.