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:
-
No IBM Cloud console, clique no ícone Menu
> Automação de 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.
a. Clique em Incluir uma ferramenta.
b. Na seção Integrações de ferramentas, clique em SonarQube.
-
Digite um nome para essa instância da integração de ferramenta SonarQube.
-
Digite a URL para a instância SonarQube que você deseja abrir ao clicar no cartão SonarQube de sua cadeia de ferramentas.
-
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.
-
Digite a senha ou o token de autenticação que deseja usar para se conectar ao servidor SonarQube.
-
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.
-
Clique em Criar integração.
-
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:
| 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.
-
Acesse o painel do SonarQube que foi criado pela URL nos logs de pipeline na tarefa
static-scan.
SonarQube de controle -
Clique em Portas de qualidade > Criar.
-
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.
-
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, SonarQube, consulte SonarQube a Documentação.
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 parâmetros de análise possíveis 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.
Configurando SonarQube usando a API
A integração de SonarQube ferramentas suporta os seguintes parâmetros de configuração que você pode usar com a API e os SDKs HTTP da Toolchain ao criar, ler e atualizar integrações de ferramentas.
Você deve especificar a propriedade tool_type_id no corpo da solicitação com o valor sonarqube.
| 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 | url_do_servidor | O URL painel do SonarQube servidor para a integração desta ferramenta. Na interface gráfica do usuário, o navegador acessa este painel quando você clica no cartão de integração SonarQube de ferramentas. |
| nome | necessário, atualizável | Sequência | nome | O nome dessa integração de ferramenta. |
| login_do_usuário | opcional, atualizável | Sequência | login_do_usuário | 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. |