quinta-feira, 30 de janeiro de 2020

Implementando SonarQube para Análise de Código de Projetos C#/VB.NET

Implementando SonarQube para Análise de Código de Projetos C#/VB.NET

O SonarQube é uma ferramenta (plataforma de código aberto) para inspeção da qualidade do código, detectar bugs, melhorias de código e vulnerabilidades de segurança em linguagens de programação.

Neste tutorial vamos criar um servidor de SonarQube para que seja possível executar a validação de um código de um projeto que esteja acessível localmente na máquina.

Passo 1 » Instalação e Configurando o Server de SonarQube

Vamos utilizar o portal do Azure para criar uma instância de contêiner para hospedar e rodar nosso servidor do SonarQube, será através desse servidor que será possível referenciá-lo no projeto ou Pipeline do Azure DevOps e também verificar os resultados das análises.

1. Acessar o Portal do Azure
2. Pesquisar um recurso “instância de contêiner”



3. Adicionar uma instância e definir dados Básico



Importante no preenchimento: 
Nome da imagem: sonarqube (esse é nome da imagem para criação do contêiner)
Tamanho: alterar para 2 vcpus e 3.5 de memória para suportar a instância

4. Na parte de rede é importante criar a Porta 9000/TCP e remover a porta 80/TCP



Importante no preenchimento: 
Rótulo do nome DNS: esse nome será endpoint do servidor SonarQube

5. Efetuar a revisão e criação da instância



6. Aguardar a implantação do recurso



Passo 2 » Configuração a Plataforma SonarQube e Criando o Projeto

7. Acessar a plataforma SonarQube no servidor criado
    Para acessar basta utilizar o endereço (FQDN) seguindo pela porta 



8. Utilizar o login e senha (admin/admin) para logar na plataforma

9. Iniciar um novo projeto para conectar com seu código fonte que irá ser analisado



10. Defina a chave do projeto, essa chave será utiliza para localizar o repositório do SonarQube para armazenar os resultados



11. Agora é necessário a geração do token que será utilizado para geração da analise



12. Selecione a linguagem C# or VB.NET



13. Faça o download do Scanner for MSBuild


14. Selecione o tipo de projeto e faça o download do pacote



Importante:
Para a execução dessa validação, o SonarQube Scanner necessita que o Java 11 esteja instalado (http://www.google.com/search?q= java+jdk+11)

15. Faça a extração o arquivo baixado para a pasta “C:\Arquivos de Programas\...”



16. É importante definir esse diretório no %PATH% do Windows, veja como em (http://www.google.com/search?q=Add+directory+to+your+PATH+environment+variable+windows)

Passo 3 » Execute a validação de código no Projeto

17. Agora basta acessar o “Developer Prompt de Comand for VS ????” e acessar a diretório onde está a solução do projeto que deseja gerar a análise


 18. Agora basta executar os comandos que foram exibidos no previamente no passo 12 



19. Ao final todos os dados coletados estarão à disposição para análise no portal do SonarQube




Numa próxima matéria, vamos implementar o SonarQube na esteira (CI/CD) do Azure DevOps.

Marcelo Goberto de Azevedo
Arquiteto na GFT Brasil
https://marcelogoberto.blogspot.com/