Как добавить блок try try в декларативном синтаксисе Jenkins.? - PullRequest
1 голос
/ 02 мая 2019

Я пытаюсь добавить try catch block в декларативном конвейере Jenkins, но в итоге я получаю следующую ошибку: я прочитал документ по добавлению блока try catch для скриптового конвейерного синтаксиса Jenkins (https://jenkins.io/doc/book/pipeline/syntax/#post-conditions), но я этого не сделал)не получить ничего о декларативном синтаксисе.

pipeline {
agent any
    stages {
        try {
            stage('Checkout') {
                steps {
                    script {
                        if (ci_branches.contains(env.BRANCH_NAME)) {
                            // Pull the code from bitbucket repository
                            checkout scm
                        }
                    }
                }
            }
        }
        catch(all) {
            currentBuild.result='FAILURE'
        }
    }
}

Jenkins ci build build

[Bitbucket] Build result notified
    org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
    WorkflowScript: 36: Expected a stage @ line 36, column 13.
                   try {
                   ^
    WorkflowScript: 35: No stages specified @ line 35, column 9.
               stages {
           ^

1 Ответ

1 голос
/ 02 мая 2019

Try / catch должен быть внутри скрипта при использовании декларативного конвейерного синтаксиса.Проверьте следующее:

pipeline {
agent any
    stages {       
        stage('Checkout') {
            steps {
                script {
                    try {
                        if (ci_branches.contains(env.BRANCH_NAME)) {
                            // Pull the code from bitbucket repository
                            checkout scm
                        }
                    }
                    catch(all) {
                        currentBuild.result='FAILURE'
                    }   
                }
            }
        }        
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...