对于以下管道脚本:
stage('stage1'){
withSonarQubeEnv(server){
sh "${scannerHome}/bin/sonar-scanner"
}
}
stage1
启动声纳扫描并以成功状态退出。
stage2
等待30分钟,直到声纳扫描完成为止,根据下面的代码,詹金斯被认为获得了QualityGate状态。
stage('stage2'){
timeout(time: 40, unit: 'MINUTES') {
def qGate = waitForQualityGate()
if (qGate.status != 'OK') {
error "Pipeline aborted due to quality gate failure: ${qGate.status}"
}
}
}
我们在Jenkins中配置了Sonar服务器和声纳扫描仪。
是否需要其他配置才能接收质量门状态?
答案 0 :(得分:1)
要使其正常工作,您需要:
withSonarQubeEnv(nameofyourconfiguredSonarHost)
工作之后,它应该可以正常工作。
以我的经验,超时10分钟就足够了。
也许需要其他设置,例如代理或防火墙才能
从Sonarqube访问Jenkins-这取决于您的网络。