我想使用SonarQube来分析对我的项目做出的任何拉取请求(PR)。
几点快点:
dev
分支上合并master
分支;; 鉴于这些要点,这就是我所做的:
Administration -> Settings -> Pull Requests (Alpha)
下,我使用机器人的令牌设置Authentication token
并使用Repository identifier
格式设置<Organization>/<Repo>
我的回购地址; appveyor.yml
文件,以便对所有PR运行SonarQube分析;类似于以下内容:
build_script:
choco install "msbuild-sonarqube-runner" -y
MSBuild.SonarQube.Runner.exe begin /k:"REPO" /o:"ORGANIZATION" /d:"sonar.host.url=https://sonarcloud.io" /d:"sonar.analysis.mode=preview"
MSBuild.exe /t:Rebuild
MSBuild.SonarQube.Runner.exe end
但是,我仍然没有看到SonarQube使用机器人对新PR进行评论(类似于their demo。
答案 0 :(得分:1)
您尝试激活的功能尚未准备好使用 - 这就是为什么它被命名为&#34; Alpha&#34; (Administration -> Settings -> Pull Requests (Alpha)
)。
在任何情况下,即使此功能准备就绪,虽然这样可以保护您的 GitHub令牌,因为您只会将其保存在SonarCloud上(这很棒),您仍然需要提供< strong> SonarCloud令牌来执行分析。由于您不想公开您的SonarCloud令牌,因此您无法分析外部拉取请求。不幸的是,我们目前没有办法解决这一限制。
答案 1 :(得分:0)
我不会将我的API密钥放在任何公共文件上,而Appveyor则不是 要在公共PR上公开我的安全令牌。
要解决此问题,您只需使用https://ci.appveyor.com/tools/encrypt在appveyor中加密令牌即可。
然后将加密的值复制粘贴到您的appveyor.xml文件中。