sábado, 4 de outubro de 2014

Inspecionando sistemas com o Sonar Runner

Sonar Runner

O Sonar Runner é o programa que realiza a inspeção nos nossos sistemas e registra os resultados no Sonar. Já tivemos o primeiro contato com essa ferramenta no post "Meus Primeiros Passos no Sonar". E vimos no post "Configurando o Banco de Dados no Sonar" como configurar um banco de dados definitivo para o Sonar, agora precisamos ajustar a configuração do Sonar Runner que fizemos no primeiro post para que ele possa conectar nesse banco.

Para isso vamos abrir o arquivo de configuração "\sonar-runner-2.4\conf\sonar-runner.properties".

Localize a linha:
#----- H2
sonar.jdbc.url=jdbc:h2:tcp://localhost:9092/sonar

e comente o banco H2.
#sonar.jdbc.url=jdbc:h2:tcp://localhost:9092/sonar

Assim desligamos o banco H2 e agora vamos configurar o mesmo banco de dados que escolhemos seguindo o post "Configurando o Banco de Dados do Sonar".

Localize a linha abaixo para configurar o usuário e senha do banco:

#----- Global database settings
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar

Depois basta procurar a linha do seu banco de dados desejado, descomentar e configurar:

#----- MySQL
#sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8

#----- Oracle
#sonar.jdbc.url=jdbc:oracle:thin:@localhost/XE

#----- Microsoft SQLServer
#sonar.jdbc.url=jdbc:jtds:sqlserver://localhost/sonar;SelectMethod=Cursor

Como estou usando a instancia do MySQl vou descomentar esse banco e configurar.

sonar.jdbc.url=jdbc:mysql://localhost:3306/sonardev?useUnicode=true&characterEncoding=utf8

Depois de configurar o banco do Sonar Runner posso executar o sonar.bat que criamos no post "Meus Primeiros Passos no Sonar" novamente.
Sonar exibindo o Sonar Snitch após inspeção

Espero que tenham gostado, nesse ponto já temos o Sonar configurado para que possa ser usado corporativamente. Mas dicas de como estruturar o Sonar na sua organização é assunto para outra história... 

Um grande abraço a todos e aguardem novidades.

Atenciosamente,
Erick Ferreira Marques da Silva

2 comentários:

  1. Boa noite Erick, tudo bem? Seus ensinos tem me ajudado muito no aprendizado do Sonar. Estou trabalhando para implantar o sonar na empresa onde trabalho e seu blog tem me ajudado muito. Gostaria de saber se você já integrou com Git? Abraços.

    ResponderExcluir
    Respostas
    1. Opa legal !? Desculpe a demora para responder, me envolvo com muitos projetos ao mesmo tempo e acabei abandonando esse blog por muito tempo. Pretendo retomar ele em breve detalhando as novas versões do Sonar. Bom, respondendo a sua pergunta... Já integrei com o Git do Team Fundation Server, não tenho projetos no GitHub mas não vejo problemas em fazer isso... mas o importante é que o Sonar-runner não vai integrar com nenhum repositório... Quem vai fazer isso será sua build. Creio que todos os servidores de build hoje tem uma configuração prévia para o GitHub. Seja TFS, CruiserControl (.NET ou Java), Hudson, etc... Você precisa configurar sua build para conectar no repositório, trazer o fonte para uma pasta local, rodar o sonar runner (como detalha o artigo) e limpar as pastas temporárias que criou... um simples processo de build para automatizar a inspeção do Sonar... Já fiz isso com o TFS e CruiserControl.NET para diversos repositórios e o processo de build é o mesmo. Espero ter ajudado. Abraços.

      Excluir