Automação da Implantação do HumanGov SaaS
Neste projeto prático, embarquei na automação de serviços baseados na nuvem, com foco na aplicação HumanGov SaaS. O objetivo era otimizar os processos de construção e implantação usando o Kubernetes e implementar a integração e entrega contínua (CI/CD) com os serviços da AWS.
O projeto começou com a configuração do repositório AWS CodeCommit para gerenciar e armazenar o código-fonte, garantindo as melhores práticas de controle de versões. Em seguida, orquestrei o processo de integração contínua (CI) usando o AWS CodeBuild, configurando compilações automatizadas que compilam e empacotam a aplicação HumanGov em um formato pronto para implantação.
O ponto central da automação foi a criação de configurações Kubernetes para definir a implantação, incluindo serviços, pods e outros recursos necessários. Defini um pipeline de entrega contínua (CD) com o AWS CodePipeline, conectando o repositório de código-fonte, o serviço de compilação e os clusters Kubernetes para permitir um fluxo contínuo desde o commit do código até a implantação.
Para a containerização da aplicação, utilizei o Docker. Criei Dockerfiles para construir imagens da aplicação HumanGov, que foram então enviadas para o AWS Elastic Container Registry (ECR). Essas imagens foram obtidas durante a fase de implantação no cluster Kubernetes, garantindo um processo de implantação eficiente e reproduzível.
Com o pipeline CI/CD em funcionamento, qualquer alteração feita no código-fonte acionava automaticamente um processo de build, seguido de uma implantação no cluster Kubernetes. Isso permitiu agilidade no desenvolvimento e implantação de novos recursos, com mínima intervenção humana.
O processo de automação foi concluído com testes rigorosos da implantação, garantindo que a aplicação estivesse funcionando conforme o esperado no ambiente de nuvem da AWS. Este projeto não apenas automatizou a implantação da aplicação, mas também forneceu insights valiosos sobre os serviços da AWS, as vantagens do Kubernetes na gestão de aplicações em container e os ganhos de eficiência ao automatizar o pipeline de construção e implantação.
Principais aprendizados deste projeto incluíram as complexidades dos serviços da AWS, as vantagens do Kubernetes na gestão de aplicações em container e os ganhos de eficiência ao automatizar o pipeline de construção e implantação.