小编Dar*_*ark的帖子

在 Jenkinsfile 中设置 SonarQube webhook

我正在尝试创建一个 Jenkins 多分支管道,在每次推送到 bitbucket 时,都会在该项目的该分支上执行 SonarQube 分析。Jenkins 为每个分支正确创建新作业,并在 SonarQube 中创建一个新项目,并将分支名称附加到项目名称。

我遇到的问题是,当 SonarQube 创建新项目时,默认情况下未设置报告 Quality Gate 状态的 webhook,因此我必须手动进入每个 SonarQube 项目并设置 Webhook url。当我的团队每天创建许多分支时,这是一个问题。

有没有办法在我的 Jenksfile 中指定我希望 SonarQube 项目有一个 webhook?

stage('SonarQube Analysis') {
        steps {
            withSonarQubeEnv('Sonarqube Server') {
                script {
                    def sonarScanner = tool name: 'SonarQube Scanner', type: 'hudson.plugins.sonar.SonarRunnerInstallation'
                    sh "${sonarScanner}/bin/sonar-scanner " +
                    "-Dsonar.projectKey=ProjectName-${GIT_BRANCH} " +
                    "-Dsonar.projectName=ProjectName-${GIT_BRANCH} " +
                    "-Dsonar.projectVersion=0.0.0 " +
                    "-Dsonar.sources=**/src " +
                    "-Dsonar.java.binaries=**/build " +
                    "-Dsonar.exclusions=excluded_dirs/** " +
                    "-Dsonar.sourceEncoding=UTF-8"
                }
            }
            timeout(time: 5, unit: 'MINUTES') {
                script {
                    def qg …
Run Code Online (Sandbox Code Playgroud)

sonarqube jenkins-pipeline multibranch-pipeline

4
推荐指数
1
解决办法
7995
查看次数