O que é o SonarCloud? Como usar essa plataforma? Para que ela serve?
Essas e outras dúvidas são muito comuns quando o assunto é SonarCloud, que ainda gera muitas dúvidas sobre seu uso e benefícios. Essa plataforma em nuvem, que exibe o processo de inspeção contínua do código de uma aplicação, é muito útil, sabia?
Isso porque ela utiliza o SonarQube para fazer a “varredura” em seu código fonte e analisar possíveis vulnerabilidade, erros e regras específicas da linguagem. Com isso, esse serviço de análise de código tem capacidade para detectar problemas de qualidade de código em 25 linguagens de programação diferentes.
A seguir, veja, em detalhes, o que é SonarCloud, como ele funciona e como utilizá-lo!
O que é o SonarCloud?
SonarCloud
O SonarCloud, como já dissemos acima, é um serviço de análise de código baseado em nuvem. Ele foi projetado para detectar problemas de qualidade de código em 25 linguagens de programação diferentes, garantindo continuamente a manutenção, confiabilidade e segurança do seu código.
O SonarCloud usa técnicas de última geração em análise de código estático para encontrar problemas e problemas potenciais no código que você e sua equipe estão escrevendo.
Entre os seus diferenciais, está o fato de ele adicionar uma camada extra de verificação, funcionando de maneira diferente dos testes automatizados e da revisão de código humana.
Com a detecção precoce de problemas, menos problemas chegam aos estágios posteriores do processo. Com isso, há muito mais qualidade do código de produção.
Como funciona o SonarCloud?
O SonarCloud é um serviço em nuvem, que funciona por meio de uma conexão ao serviço de repositório de código baseado em nuvem que o desenvolvedor já usa. Atualmente, o SonarCloud oferece suporte aos seguintes serviços:
- GitHub
- Bitbucket Cloud
- Serviços DevOps do Azure
- GitLab
Ao se cadastrar pela primeira vez no SonarCloud, é preciso escolher a qual provedor de repositório você deseja se conectar. Depois, basta entrar na plataforma com suas credenciais já cadastradas neste serviço para que sua conta SonarCloud seja criada e vinculada à conta no provedor do repositório.
Feito isso, é possível importar organizações de sua conta de serviço de repositório para sua conta SonarCloud e, depois, importar repositórios dessas organizações. Cada organização importada se torna uma organização SonarCloud e cada repositório importado se torna um projeto SonarCloud.
Qual é o custo do SonarCloud?
O SonarCloud é gratuito para todos os projetos de código aberto. Qualquer repositório público em qualquer um dos serviços suportados pode ser analisado gratuitamente. Para repositórios privados, uma camada paga está disponível.
O SonarCloud funciona com mais de 20 linguagens, incluindo Java, JavaScript, TypeScript, Python, C # e C / C ++.
O que o Sonarcloud detecta
O SonarCloud é capaz de identificar problemas e pontos de acesso de segurança em seu código.
E o diagnóstico do SonarCloud é seguro? A resposta é: sim! Os algoritmos do SonarCloud são propositalmente conservadores. Eles são projetados para minimizar o número de falsos positivos e, por isso, se o SonarCloud identificar um problema, certamente é algo que deve ser corrigido.
Os problemas são agrupados em três tipos no SonarCloud:
- Code smell (mau cheiro no código): são características do código que, embora não impeçam o funcionamento adequado do programa, podem indicar problemas mais profundos, que afetam negativamente a capacidade de manutenção do código.
- Bugs: erros no código que podem impedir o programa de funcionar conforme o esperado. Eles afetam a confiabilidade do código.
- Vulnerabilidades: são problemas no código que podem ser explorados por pessoas mal intencionadas para comprometer a segurança do aplicativo.
Onde o SonarCloud se encaixa
SonarCloud
O SonarCloud é projetado para ser integrado ao processo de desenvolvimento de software. Com o objetivo de intervir e evitar que problemas cheguem à produção, ele atua em três lugares diferentes: no editor, na solicitação de pull e na base de código.
No editor
O SonarLint, um dos produtos do SonarCloud, fornece aos desenvolvedores feedback imediato direto no editor, identificando os problemas antes mesmo de chegarem ao repositório.
A solicitação pull
Permite que um desenvolvedor peça a outros para revisarem seu trabalho antes de ser integrado ao corpo principal do código. No serviço de repositório, a solicitação pull é exibida em uma interface dedicada, que permite ao revisor ver as alterações propostas e aprovar ou negar a fusão.
Na base do código
A plataforma detecta problemas que só podem ser encontrados depois que o código é mesclado. Para encontrar esses tipos de problemas, o SonarCloud precisa analisar toda a base de código como uma única unidade e também analisar os resultados da compilação do código. Para fazer isso, o SonarCloud oferece a análise automática e análise baseada em CI.
Análise automática
A análise automática permite que o SonarCloud detecte cada vez que uma solicitação pull for mesclada e analise o novo estado do código em seu repositório. Ela só funciona com o GitHub e não funciona em repositórios com ligações múltiplas (estratégia monorepo).
Análise baseada em CI
A análise baseada em CI refere-se à configuração do SonarCloud para que execute análises como parte de seu processo de integração contínua regular (CI).
Para habilitar a análise baseada em CI, é preciso instalar e configurar um software chamado scanner. Normalmente, o scanner é configurado para ser executado como parte de seu pipeline de integração contínua para que, sempre que seu processo de construção for acionado, o scanner execute uma varredura no código.
Feito o processo, os resultados da verificação são enviados automaticamente para o SonarCloud, onde são processados e disponibilizados no painel. Lá, o usuário encontrará todos os resultados dos códigos analisados em seus repositórios. É possível, ainda, classificar e filtrar os resultados de acordo com uma ampla gama de critérios para obter uma imagem clara do estado do seu código.
Newsletter HNZ
Fique por dentro de nossos conteúdos se cadastrando na nossa newsletter semanal! Clique aqui!