Este projeto foi desenvolvido para o terceiro hackathon, tivemos a oportunidade de aplicar os conhecimentos adquiridos ao longo do curso.
Demonstrar a integração prática de Docker, SonarQube, GitHub Actions e AWS S3, automatizando a construção e implantação de uma aplicação React em um bucket S3 da AWS, com análises de qualidade de código via SonarQube.
Para realizar as atividades, era necessário ter:
- Docker instalado
- Conta no GitHub
- Conta na AWS
- Para essa atividade, iremos criar um projeto do Sonarqube, utilizando como projeto base o nosso repositório de backend: moisesAlc/Backend- ITTalent. Faça um clone do repositório para o seu computador.
- Em seguida, precisaremos entender como utilizar o Sonarqube na versão de contêiner. Podemos ter uma visão inicial sobre qualquer projeto que esteja no DockerHub, dando uma olhada na página do projeto (assim, obteremos mais detalhes específicos sobre como executar a imagem): sonarqube - Official Image | Docker Hub
- Você não usará o SonarQube em produção, então, poderá se utilizar desse passo-a-passo para executar a versão de contêiner local: Try out SonarQube
- Deverá baixar o SonarScanner CLI também SonarScanner CLI
- Para essa atividade você deverá criar um workflow do Github Actions que irá realizar o build de uma aplicação React moisesAlc/ReactBasic: Repo CreateReactApp p/ CI/CD IT Talent e, em seguida, subir o conteúdo desse build (que estará na pasta /build) para um bucket S3 da AWS que seja acessível publicamente.
- Configurei e executei um projeto SonarQube utilizando um contêiner Docker.
- Analisei o código do repositório moisesAlc/Backend-IT_Talent com o SonarQube.
- Utilizei o SonarScanner CLI para realizar a análise do código e visualizei os resultados na interface do SonarQube.
- Criei um workflow do GitHub Actions para buildar a aplicação React com sucesso.
- Configurei o GitHub Actions para enviar o build da aplicação para um bucket S3 na AWS.
- Verifiquei que o conteúdo do bucket S3 estava acessível publicamente.
Participar deste hackathon foi uma experiência enriquecedora que permitiu aplicar na prática os conceitos e ferramentas que aprendemos ao longo do curso. A criação do projeto SonarQube e a configuração do pipeline CI/CD com GitHub Actions e AWS foram desafiadoras, mas extremamente gratificantes. Estou ansiosa para continuar aprimorando minhas habilidades em DevOps e enfrentar novos desafios.