我正在尝试将 SonarQube 连接到 c# 项目。我已经承诺了这一点appveyor.yml
(根据这篇文章):
before_build:
- nuget restore
build_script:
- choco install "msbuild-sonarqube-runner" -y
- MSBuild.SonarQube.Runner.exe begin /k:"MyProjectKey" /d:"sonar.host.url=https://sonarqube.com" /d:"sonar.login=MY_TOKEN"
- msbuild "NeuralNetworkConstructor.sln"
- MSBuild.SonarQube.Runner.exe end /d:"sonar.login=MY_TOKEN"
构建日志的一部分:
...
INFO: Sensor CPD Block Indexer
INFO: Sensor CPD Block Indexer (done) | time=0ms
INFO: 9 files had no CPD blocks
INFO: Calculating CPD for 8 files
INFO: CPD calculation finished
INFO: Analysis report generated in 156ms, dir size=101 KB
INFO: Analysis reports compressed in 47ms, zip size=59 KB
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 22.312s
INFO: Final Memory: 68M/164M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarQube Scanner execution
ERROR: Insufficient privileges <<==============================
...
PS 与问题不完全相关,但我将不胜感激为可以与 appveyor 一起使用的 .net 项目提供良好的服务。我知道还有 travis-ci,但它是通过 mono 实现的。在性能方面,我对“我们什么都不承诺”感到困惑。
解决了一个问题。您只需按照SonarQube 服务本身提供的说明进行操作。出于某种原因,我没有立即看到它。在我的特殊情况下,我误解了该字段
/k:"MyProjectKey"
并且没有输入组织密钥。决赛appveyor.yml
: