如何在Jenkins管道脚本中检查Ansible Playbook是否失败

时间:2020-03-31 20:29:31

标签: jenkins ansible jenkins-pipeline return-value

下面是我的Jenkins管道脚本。每当ansible-playbook test.yml失败时,我希望调用ex(“ ansible-failed”)函数。

下面是我的管道脚本。

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播放是成功还是失败。如果失败;然后我希望调用ex()函数。

如果ansible-playbook运行成功,那么我希望继续并执行stage('second')

您能否建议在Jenkins管道脚本中成功运行ansible失败该如何检查条件?

1 个答案:

答案 0 :(得分:0)

您可以为此使用try {} catch(){}