登录 SonarQube 并新建项目

image.png

设置项目的 Key与 Display Name

Key 需要唯一
image.png

生成 / 指定 token

指 Azure DevOps 连接到该项目时所使用的 token
可以设置一个 token 的名字,然后点 Generate 生成一个,也可以用曾经的 token
image.png
目前的管理方式是同一个项目使用同一个 token,例如 AM 的项目都使用名为 Asset Management 的 token
AM 有新的项目时,就可以选 use existing token,然后粘贴该项目所用的 token

在 administrator - user 中可以找到每个用户所申请过的 token
image.png

在 Azure DevOps 中设置服务连接

*前提条件:此 Azure DevOps Organization 中已安装 SonarQube 扩展
Project Settings -> Service Connections -> New Service Connection -> SonarQube

URL 填 SonarQube 服务的网址,Token 填上文提到的 token
不勾选 Grant access permission to all pipelines 则每有一个新的 pipeline 用到该连接都需要手动 approve
image.png

在 pipelines 中使用该连接

参考下图,.NET, JAVA 和 C 系列语言以外的项目直接 SonarQubePrepare 和 SonarQubeAnalyze 就可以进行扫描
这几类项目的特殊设置方法参考官方文档:SonarScanner for Azure DevOps
image.png

SonarQubePublish 的用处是可以在 pipelines 运行结果处看到扫描结果,但只有是否通过的程度
image.png