gpt4 book ai didi

jenkins - 如何对 Jenkins 管道中的 SonarQube 质量门使用react

转载 作者:行者123 更新时间:2023-12-04 09:30:28 24 4
gpt4 key购买 nike

在我的 Jenkins 管道中,我需要对 SonarQube 质量门使用react。
有没有更简单的方法来实现这一点,但在 Sonar-Scanner 日志中查看结果页面(例如 https://mysonarserver/sonar/api/ce/task?id=xxxx )并从那里解析 JSON 结果?

我使用 Jenkins 2.30 和 SonarQube 5.3

提前致谢

最佳答案

基于文森特的回答,并使用 Pipeline utility steps ,这是我对我有用的更新版本(使用 Sonar 扫描仪报告文件):

   withSonarQubeEnv('SONAR 6.4') {
sh "${scannerHome}/bin/sonar-scanner"
sh "cat .scannerwork/report-task.txt"
def props = readProperties file: '.scannerwork/report-task.txt'
echo "properties=${props}"
def sonarServerUrl=props['serverUrl']
def ceTaskUrl= props['ceTaskUrl']
def ceTask
timeout(time: 1, unit: 'MINUTES') {
waitUntil {
def response = httpRequest ceTaskUrl
ceTask = readJSON text: response.content
echo ceTask.toString()
return "SUCCESS".equals(ceTask["task"]["status"])
}
}
def response2 = httpRequest url : sonarServerUrl + "/api/qualitygates/project_status?analysisId=" + ceTask["task"]["analysisId"], authentication: 'jenkins_scanner'
def qualitygate = readJSON text: response2.content
echo qualitygate.toString()
if ("ERROR".equals(qualitygate["projectStatus"]["status"])) {
error "Quality Gate failure"
}
}

请注意使用 Jenkins 凭证(身份验证:'jenkins_scanner')来检索 Sonar 中被身份验证的质量门。

关于jenkins - 如何对 Jenkins 管道中的 SonarQube 质量门使用react,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40504535/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com