我将Jenkins配置为与声纳扫描仪一起使用。扫描工作正常。jenkins管道正在运行,并且在jenkins日志中没有任何问题。
SonarQube Scanner 3.0.3.778 Jenkins:2.70 SonarQube Scanner for Jenkins插件:2.6.1
我使用以下代码:
stage('SonarQube analysis') {
sh 'sed -ie "s|_PROJECT_|${PROJECT_CODE}|g" $WORKSPACE/_pipeline/sonar-project.properties'
// requires SonarQube Scanner 3.0+
def scannerHome = '/opt/sonar/bin/sonar-scanner';
withSonarQubeEnv('mscodeanalysis') {
sh "${scannerHome}/bin/sonar-scanner -Dproject.settings=$WORKSPACE/_pipeline/sonar-project.properties"
}
}
}
}
}
}
// No need to occupy a node
stage("Quality Gate"){
timeout(time: 15, unit: 'MINUTES') { // Just in case something goes wrong, pipeline will be killed after a timeout
def qg = waitForQualityGate() // Reuse taskId previously collected by withSonarQubeEnv
if (qg.status != …Run Code Online (Sandbox Code Playgroud) 我们正在尝试将 Bitbucket Pipelines (Cloud) 与 SonarQube (6.4) 集成。
特别是,如果 SonarQube 分析在我们的Java代码中检测到一些质量门违规,我们希望管道构建失败。
目前,我们正在使用 Jenkins(多分支项目),由于waitForQualityGate()Jenkinsfile 文件(我在其中定义了要执行的管道)中包含的命令,我们设法实现了这种行为。
现在,我们想尝试一下 Bitbucket Pipelines 功能,因为我们的 Git 存储库托管在Bitbucket Cloud 中,并继续使用我们当前的 SonarQube 服务器实例。
为了完整起见,我们的项目是用 Java 编写并由 maven 管理的;我们还在构建过程中使用声纳扫描仪插件。
谁能给我一个提示?或者有没有人知道如何实现这种行为?
我知道声纳插件在 BitBucket 中创建报告作为拉取请求的评论,但这不是我们需要的。
在此先感谢您的帮助。