配置:
我正在尝试使用SonarQube和Jenkins构建稳定性。我将Build Stability插件添加到${SONARQUBE_HOME}/extensions/plugins
目录并重新启动了服务器。我看到SonarQube日志中启用了该插件。我将Build Stability小部件添加到默认项目仪表板中,如文档和this Stackoverflow answer中所述。由于我们的Jenkins实例是通过LDAP保护的,因此我还为具有访问Jenkins权限的用户提供了凭据。我将Jenkins作业URL放在POM的ciManagement
部分。
然后我运行了一个构建并使用Jenkins Post Build操作向SonarQube提供指标(调用mvn sonar:sonar)。构建成功,我在SonarQube中看到所有其他数据 - 测试结果,覆盖范围等。作业日志(已启用调试)显示所有各种传感器正在运行。但是,当我在SonarQube中查看项目时,我没有看到Build Stability插件的任何数据。我也没有看到尝试在作业日志中执行Build Stability插件。我希望在作业日志中看到类似的内容(如here所示):
[INFO] [05:17:18.108] CI URL: Jenkins:http://<host>/job/<job-name>/
但与Build Stability无关。然后我尝试将URL添加到SonarQube中的项目配置中,可能我认为POM错了。没有不同。我已经测试了Jenkins作业URL并且它可以正常工作。
我还在SonarQube服务器上启用了调试日志记录。我看到正在运行的作业的日志条目,但没有特定于各个插件的内容。
此时我甚至很高兴看到401/403错误,因为它比我现在的位置更远。
如何让这个插件运行?我错过了什么?
答案 0 :(得分:0)
在寻找其他可能的解决方案时,我找到了-Dsonar.verbose
选项。我认为这可能会给我更多线索,所以将它添加到Jenkins的Sonar配置中并重新运行构建。现在我明白了:
[INFO] [12:16:20.128] Sensor Build Stability
[INFO] [12:16:20.128] CI URL: https://host.com/job/jobName/
[WARN] [12:16:20.130] Unknown CiManagement system or incorrect URL: https://host.com/job/jobName/
[INFO] [12:16:20.130] Sensor Build Stability (done) | time=2ms
我忘了把詹金斯放到&#34;&#34;在SonarQube中配置作业URL时,在URL前面的部分。
只有明确配置了作业URL,BuildStability似乎才有效。尽管文档中提到了该插件,但该插件似乎无法从POM的ciManagement
部分(聚合器或父级)检索信息。