我有一个Jenkins工作,在这个工作中,我忽略了失败阶段的失败,并继续进行下一个阶段。我能够通过以下方式完成这个工作:
pipeline {
agent any
stages {
stage('1') {
steps {
sh 'exit 0'
}
}
stage('2') {
steps {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh "exit 1"
}
}
}
stage('3') {
steps {
sh 'exit 0'
}
}
}
}
然而,在我的post
操作中,如果在给定阶段发现任何错误或失败,我希望使整个构建失败。目前,我的所有post
操作都是一个清理工作。有没有方法可以收集每个步骤的失败/成功状态,然后在post
中,如果发现任何失败,使构建失败?例如:
post {
always {
cleanWs disableDeferredWipeout: true, deleteDirs: true
**<parse for errors and mark the build as a success or failure>**
}
}
}
1条答案
按热度按时间4szc88ey1#
您可以将buildResult设置为“UNSTABLE”
然后在Post action中检查它:
但是我不确定你是否可以在post action中改变构建结果。如果它不起作用,你可以尝试在最后一步检查它: