Jenkins + Sonarqube,如何在Sonarqube检测到一些语法错误时使管道失败

agxfikkp  于 2023-03-29  发布在  Jenkins
关注(0)|答案(1)|浏览(304)

我们在一些Jenkins管道中使用了Sonarqube。目前,我们只检查Sonarqube生成的报告,以尝试提高我们的代码质量,但质量门没有设置为标记为管道步骤失败,以防质量门没有通过。
但是,我们希望Sonarqube在Jenkins中将管道步骤标记为失败,以防在代码中发现一些语法错误。
例如,我们在最近的一些部署中的控制台输出中发现了以下内容:

...
INFO: 1/1 source files have been analyzed
INFO: 1 source files to be analyzed
ERROR: Failed to parse file [file:///home/jenkins/workspace/Project_Name/server/app.js] at line 231: Unexpected token )
INFO: Sensor ESLint-based SonarJS [javascript] (done) | time=1683ms
INFO: Sensor JavaXmlSensor [java]
INFO: Sensor JavaXmlSensor [java] (done) | time=2ms
...

在本例中,开发人员编写了一个不必要的右括号。Sonarqube检测到了它,但该步骤没有标记为失败,管道继续运行,正如您可能猜到的那样,部署的代码没有工作。
我一直在文档中查找,但我找不到如何配置质量门,以便Sonarqube将其标记为失败以防发现一些语法错误。
有可能吗?有什么建议吗?
先谢了。
最好的问候。

u4dcyp6a

u4dcyp6a1#

一个合理的管道将编译代码并运行单元测试,然后再尝试使用SonarQube扫描代码。如果SonarQube扫描之前的任何步骤失败,它甚至不会尝试SonarQube扫描。

相关问题