我使用SonarQube
安装了sonar-build-breaker-plugin-2.2
(v6.7)来进行高质量的检票。我在不同服务器中安装了Jenkins
(v1.3.1)和Sonar Quality Gates Plugin
(v2.161)。以下是詹金斯(Jenkins)的质量门的配置
我在作业配置中将项目密钥和作业状态配置为FAILED。问题是,当使用cmd提示从maven触发了项目的SonarQube分析时,它成功传递了。当詹金斯(Jenkins)触发了相同的工作时,我将遇到错误。
07:03:50 [INFO] Quality gate status: ERROR
07:03:50 [ERROR] Security Rating on New Code: 4 > 1
07:03:50 [ERROR] Reliability Rating on New Code: 4 > 1
07:03:50 [ERROR] [BUILD BREAKER] Project did not meet 2 conditions
07:03:51 [INFO] ------------------------------------------------------------------------
07:03:51 [INFO] BUILD FAILURE
07:03:51 [INFO] ------------------------------------------------------------------------
07:03:51 [INFO] Total time: 02:17 min
07:03:51 [INFO] Finished at: 2019-02-06T07:03:51+01:00
07:03:51 [INFO] ------------------------------------------------------------------------
07:03:51 Waiting for Jenkins to finish collecting data
07:03:52 [ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar (default-cli) on project Project-company-lib: Project does not pass the quality gate. -> [Help 1]
07:03:52 org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar (default-cli) on project Project-company-lib: Project does not pass the quality gate.
我在这里想念什么?
谢谢。
答案 0 :(得分:0)
SonarQube触发器和Jenkins Job的报告不同的原因是,我在SonarQube中有一个配置,只能分析.java,.jav
文件。在SonarQube UI中,配置->常规设置-> Java ,此配置可用。
该项目由.java,.xml,.xhtml
个文件组成,因此为了跳过Java以外的文件,我在Jenkins目标中包含了一个配置-Dsonar.language=java
,现在的报告是相同的。尽管此配置已被弃用,但目前可以正常使用。