как выйти из трубопровода, если есть какая-либо стадия отказа - PullRequest
0 голосов
/ 04 февраля 2020

Я использую декларативный конвейер Jenkins, у него всего 10 этапов. Мое требование - отменить сборку в случае сбоя какой-либо стадии. Я использую приведенный ниже скрипт, хотя он работает конвейер прерывается с ошибками ниже.

Ошибка при выполнении условия публикации ошибки: hudson.AbortException: скрипт вернул код завершения 1 в org.jenkinsci.plugins.workflow.steps.durable_task.DurableTaskStep $ Execution.handleExit (DurableTaskStep. java: 658)

def PYTHON_BUILD;
def disagg_py;

pipeline {
    agent any
     stages {

        stage('version'){
            steps{


                script {
                disagg_py = build(
                job: 'version',
                )
                }

                println 'Jenkins version:'
                script {

           PYTHON_BUILD = 'PROD_PYAMIDISAGG_1.0.'+disagg_py.displayName
           PYTHON_BUILD = PYTHON_BUILD.replace("#", "");
            println PYTHON_BUILD
           }

}
post {
                failure {
                 emailext body: 'A Test EMail', recipientProviders: [[$class: 'DevelopersRecipientProvider'], [$class: 'RequesterRecipientProvider']], subject: 'Test'
                 script{
                        sh "exit 1"
                 }
        }
}
}
     stage('docker version'){
            steps{
                retry(3) {
                    build job : 'version2'
                }
            }
            post {
                failure {
emailext body: 'A Test EMail', recipientProviders: [[$class: 'DevelopersRecipientProvider'], [$class: 'RequesterRecipientProvider']], subject: 'Test'
        }

     }

     }
    }
}
    ```

1 Ответ

0 голосов
/ 04 февраля 2020

Вы можете использовать шаг error:

error('Build has failed.')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...