Как отправить результат анализа сонара в запрос на слияние gitlab в конвейере Jenkins - PullRequest
2 голосов
/ 05 марта 2019

У меня есть задание Jenkins, которое запускается каждый раз, когда в проект gitlab поступает запрос на слияние. Тип задания - конвейерный, я использую конвейерный скрипт из SCM.

Как я могу отправить анализ сонара в качестве обратной связи на запрос слияния gitlab?

Как я могу предотвратить слияние кода до получения отклика от сонара?

Вот скрипт, который я использую:

pipeline {
    agent any
    options {
        gitLabConnection('my_connection')
        gitlabBuilds(builds: ["SonarQube"])
    }
    tools {
        maven 'maven'
        jdk 'jdk8'
    }

    stages {
        stage('SonarQube') {

            steps {
                gitlabCommitStatus("SonarQube") {
                    withSonarQubeEnv('my_sonar') {
                        sh "mvn sonar: sonar" // here I want to send the sonar analysis as feedback to the gitlab merge request.
                    }
                }
            }

        }

    }

}

Сценарий, приведенный выше, просто передает pass или fail.

...