如何确保始终执行Jenkins管道阶段,即使前一个阶段失败?

如何确保始终执行Jenkins管道阶段,即使前一个阶段失败?,jenkins,groovy,jenkins-pipeline,Jenkins,Groovy,Jenkins Pipeline,我正在寻找一个Jenkinsfile示例,说明即使前一个步骤失败,也始终执行一个步骤 我想确保在失败的情况下归档一些构建结果,并且我需要能够在最后有一个始终运行的步骤 如何实现这一点?我们切换到使用Jenkinsfile声明性管道,这让我们可以执行以下操作: try { sh "false" } finally { stage 'finalize' echo "I will always run!" } pipeline

我正在寻找一个
Jenkinsfile
示例,说明即使前一个步骤失败,也始终执行一个步骤

我想确保在失败的情况下归档一些构建结果,并且我需要能够在最后有一个始终运行的步骤


如何实现这一点?

我们切换到使用Jenkinsfile声明性管道,这让我们可以执行以下操作:

   try {
         sh "false"
    } finally {

        stage 'finalize'
        echo "I will always run!"
    }
pipeline {
    agent any
    stages {
        stage('Test') {
            steps {
                sh './gradlew check'
            }
        }
    }
    post {
        always {
            junit 'build/reports/**/*.xml'
        }
    }
}
参考资料:


我希望这个问题会有所帮助。如何在管道脚本中执行此操作?@andrewmy这是管道脚本语法,因此您可以将其复制粘贴到管道定义中。如果您使用docker容器作为代理,则不会在容器中运行post:(