如何将 SonarQube 分析的质量门检查到工作中
Posted
技术标签:
【中文标题】如何将 SonarQube 分析的质量门检查到工作中【英文标题】:How to check the quality gate of a SonarQube analysis into a job 【发布时间】:2021-09-12 11:59:33 【问题描述】:我正在从事 jenkins 工作,但不可能使用管道。
我需要做的是启动一些 sonarQube 分析并检查质量门是否已通过。如果质量门的分析失败,我想阻止我的工作。
我知道我可以通过编写管道脚本来做到这一点,并且我知道该怎么做,但在这种特殊情况下,我无法编写管道,但我只能使用“预构建步骤”和“构建后步骤”工作。 所以我的问题是:
是否可以将管道实施到没有管道部分的作业中? 如何检查分析是否通过了质量门?我还阅读了一个名为“Quality Gate”的 Jenkins 插件,但它存在安全问题(纯文本凭据),所以我认为他们不允许我使用它。谢谢大家!
【问题讨论】:
【参考方案1】:在这种情况下,可能最简单的方法是指示声纳扫描仪等待质量门结果。来自documentation:
您可以在配置文件中使用
sonar.qualitygate.wait=true
分析参数。将sonar.qualitygate.wait
设置为 true 会强制分析步骤轮询您的 SonarQube 实例,直到 Quality Gate 状态可用。这会增加流水线持续时间并导致分析步骤在质量门失败时失败,即使实际分析成功也是如此。
【讨论】:
以上是关于如何将 SonarQube 分析的质量门检查到工作中的主要内容,如果未能解决你的问题,请参考以下文章
SonarQube 7.1 和 TFS 2018 发布质量门结果失败