SonarQube/VSTS - 项目特定排除项

SonarQube/VSTS - Project specific exclusions

我当前的设置是 运行 SQ v6.5 和 SonarC# 6.4.1

我有多个项目,这些项目与其他项目相互依赖,由不同的所有者(团队)负责。我正在尝试为每个团队设置一个构建,该构建将只显示特定于该团队的文件。为此,我尝试通过 UI 为特定项目进行如下设置(项目 > 管理 > 常规设置 > 分析范围)。

项目密钥 - Team_A

项目排除 - sonar.exclusions = **/* Team_B */ **(无空格)。

由于源代码结构是root/workspace/Team_{id}/TeamSpecificCode,我认为像上面这样放置通配符会在分析时忽略团队B的代码。

  1. 在仪表板上完成分析后,我仍然可以看到 Team_B 及其子目录中列出的问题。
  2. 即使我通过 UI 添加了这个到一个特定的项目,我仍然可以在查看全局设置或 Team_B 项目的设置时看到这些。

我不确定我是否做错了什么。我是 运行 这些通过 VSTS 构建任务所以我相信它应该尊重服务器设置。目前没有提到其他设置(如果我可以通过 UI 设置它,我宁愿避免设置其他设置)

附加信息: 我也已经在 VSTS 中尝试过其他设置。这会导致其中的多个设置出现问题。我用逗号和分号试过,但任务因未知命令而中断。 eg./d:sonar.exclusions=** /* Team_B */ **, ** /* Team_C */ **

通过额外的任务或服务器端设置,结果是一样的。标记的目录不排除分析。

准备 SonarQube 分析 任务的附加设置中指定 sonar.exclusions

/d:sonar.exclusions=**/*Team_B*/**