Как проверить, произошла ли ошибка ansible playbook внутри сценария конвейера Jenkins - PullRequest
0 голосов
/ 31 марта 2020

Ниже приведен мой конвейерный сценарий Jenkins. Я sh буду вызывать функцию ex ("ansible -failed") всякий раз, когда ansible -playbook test.yml завершается ошибкой.

Ниже приведен мой конвейерный сценарий.

def ex(param)
    {
    echo "ABORT due to:" + param
    }

pipeline
    {
    stages
        {
        stage('first')
            {
            steps
                {
                script
                    {
                    def user = "user1"
                    }
                echo "Calling ansible"
                ansiblePlaybook(
                        playbook: '/app/test.yml'
                        extraVars: [ app_ip: "10.0.0.12,10.0.0.13" ]
                                )
                }
            }
        stage('second')
            {
            steps
                {
                script
                    {
                    println "Second Play"
                    }
                }
            }

        }
    }

Вышеупомянутый конвейерный сценарий Jenkins вызывает ansible -playbook test.yml, однако я не знаю, как определить, воспроизводится ли ansible удалось или не удалось. Если это не удалось; затем я sh вызываю функцию ex ().

Incase ansible -проигрыватель успешно запускается, тогда я sh просто продолжаю и выполняю этап ('second')

Не могли бы вы предложить, как мы можем проверить условие, если ansible Выполнение выполнено успешно или не удалось в сценарии конвейера Jenkins?

1 Ответ

0 голосов
/ 01 апреля 2020

Вы можете использовать try {} catch () {} для этого

...