IBM Cloud Docs
Configurando o Sonarqube

Configurando o Sonarqube

O SonarQube fornece uma visão geral do funcionamento geral e da qualidade do seu código-fonte e destaca os problemas encontrados no novo código. Os analisadores de código detectam erros difíceis, como desreferência de ponteiro nulo, erros lógicos e fugas de recursos, em mais de 20 linguagens de codificação.

Configure o SonarQube para continuamente analisar e medir a qualidade de seu código-fonte:

  1. No console IBM Cloud, clique no ícone de hambúrguer Menu > Automação da plataforma > Cadeias de ferramentas. Na página Cadeias de ferramentas, clique na cadeia de ferramentas para abrir a sua página de Visão geral. Como alternativa, na página Visão Geral do seu app, no cartão Entrega contínua, clique em Visualizar a cadeia de ferramentas. Em seguida, clique em Visão geral.

    a. Clique em Incluir uma ferramenta.

    b. Na seção Integrações de ferramentas, clique em SonarQube.

  2. Digite um nome para essa instância da integração de ferramenta SonarQube.

  3. Digite a URL para a instância SonarQube que você deseja abrir ao clicar no cartão SonarQube de sua cadeia de ferramentas.

  4. Opcional: Digite o nome de usuário que você usa para se conectar ao servidor SonarQube.

    Será necessário especificar um nome do usuário apenas se você usar uma senha para se conectar ao servidor do SonarQube. Se você usar um token de autenticação para se conectar, deixe esse campo vazio.

  5. Digite a senha ou o token de autenticação que deseja usar para se conectar ao servidor SonarQube.

  6. Caso não seja possível localizar o servidor na Internet pública, selecione Avançado. O IBM Cloud não é capaz de validar os detalhes de conexão fornecidos e algumas funções que exigem que esse servidor tenha acesso à API estão desativadas. O pipeline de entrega funciona apenas usando um trabalhador privado que tem acesso de rede a este servidor.

  7. Clique em Criar integração.

  8. Na página de visão geral da sua cadeia de ferramentas, na placa Ferramentas de terceiros, clique em SonarQube para visualizar o painel para a instância do SonarQube à qual você se conectou.

Incluindo Sonarqube no pipeline de integração contínua

Instância padrão do SonarQube

Caso você não tenha uma instância própria do SonarQube, durante sua execução, o pipeline criará uma instância do SonarQube. É possível acessar esta instância após o estágio de varredura estática ser executado com sucesso.

Instância existente do SonarQube

Para incluir a sua própria instância do SonarQube ao seu pipeline existente, inclua a integração da ferramentas em sua cadeia de ferramentas e, em seguida, inclua o parâmetro de integração da ferramenta Sonarqube no pipeline.

Parâmetros necessários

Para executar a varredura do SonarQube, o pipeline precisa dos parâmetros de integração contínua a seguir:

Continuous integration pipeline parameters
Nome Tipo Descrição Obrigatório ou opcional
cluster-nome Texto O nome do cluster de construção do Docker. Obrigatório
dev-region Texto A região do IBM Cloud que hospeda o cluster. Obrigatório
opt-in-sonar Texto A opção para ativar a varredura do sonarQube. Obrigatório
sonarqube integração de ferramenta A integração da ferramenta Sonarqube. Opcional

Para obter mais informações sobre parâmetros de pipelines, consulte Parâmetros de pipeline.

Se você incluir várias integrações da ferramenta SonarQube em seu pipeline, poderá alternar entre elas mudando o valor do parâmetro sonarqube pipeline, que é um parâmetro de integração de ferramentas.

Atualizando a porta de qualidade

Se você usar a instância do SonarQube que o pipeline criou, poderá atualizar a porta de qualidade padrão.

  1. Acesse o painel do SonarQube que foi criado pela URL nos logs de pipeline na tarefa static-scan.

    SonarQube dashboard
    SonarQube dashboars

  2. Clique em Portas de qualidade > Criar.

  3. Configure a sua Porta de Qualidade usando uma das opções a seguir:

    • Clique em Configurar como padrão para configurar a porta de qualidade recém-criada como o padrão.
    • No painel, selecione o projeto e, em seguida, clique em Configurações do projeto > Porta de qualidade para usar a portal de qualidade recém-criada para o projeto.
  4. Especifique qual porta de qualidade você deseja associar ao projeto. Novas varreduras são avaliadas por esta porta de qualidade e evidências são criadas pelos resultados da porta de qualidade.

Para saber mais sobre o SonarQube, consulte DocumentaçãoSonarQube.

Usando o seu próprio arquivo de configuração

É possível modificar a configuração padrão sem usar a sua própria instância do SonarQube. Crie um arquivo sonar-project.properties no repositório no qual você deseja criar o arquivo de configuração. Se o nosso script detectar um arquivo de configuração configuration sonar-project.properties existente no repositório, ele usará esse arquivo em vez do arquivo padrão. Para obter mais informações sobre os possíveis parâmetros de análise no arquivo de configuração, consulte Parâmetros de análise aqui.

Certifique-se de incluir as credenciais de login e a URL do host corretas no arquivo de configuração.

Usando outra implementação de varredura estática

É possível modificar seu arquivo .pipeline-config.yaml para incluir seu próprio script customizado no estágio static-scan para usar a sua própria implementação de varredura estática.

Configuração do SonarQube usando a API

A integração de ferramenta SonarQube suporta os parâmetros de configuração a seguir que podem ser usados com a API de HTTP e SDKs da cadeia de ferramentas ao criar, lere atualizar integrações de ferramenta.

Você deve especificar a propriedade tool_type_id no corpo da solicitação com o valor sonarqube.

Parâmetros de integração da ferramentaSonarQube
Parâmetro Uso Tipo Argumento de Terraform Descrição
blind_conexão opcional, atualizável, ' Default: false Booleano blind_conexão Configure como true para instruir Continuous Delivery para ignorar a validação de configuração dessa integração. Além disso, configure como true se o servidor SonarQube não for endereçável na Internet pública
Dashboard_url necessário, atualizável Sequência server_url A URL dos dashboars do servidor SonarQube para essa integração de ferramenta Na IU gráfica, o navegador vai para esse painel quando você clica no cartão de integração da ferramenta SonarQube
nome necessário, atualizável Sequência nome O nome dessa integração de ferramenta.
user_login opcional, atualizável Sequência user_login O ID do usuário para autenticação com o servidor SonarQube.
user_password opcional, atualizável Senha user_password A senha ou o token para autenticar com o servidor SonarQube. Você pode usar uma referência de segredos de cadeia de ferramentas para este parâmetro. Para obter mais informações sobre referências de segredos, consulte Protegendo seus dados sensíveis em Continuous Delivery.