我想在声明性管道中实现以下通知:
(回归)→工作已经开始失败!
(失败)→工作仍然失败。
(已修复)→作业已恢复。
post
conditions似乎无法做到这一点。相反,当构建失败时,failure
和regression
都会触发。有一个changed
条件,但我认为这个任务需要的是unchanged { failure }
,它不存在。
post {
regression {
slackSend message: 'Job has started to fail!'
}
failure {
slackSend message: 'Job is still failing.'
}
fixed {
slackSend message: 'Job has resumed.'
} // no need for 'success' as we don't want a notification while it's working
}
如果作业先前成功,上面的配置将发送以下通知:
(工作失败)
工作已经开始失败了!
工作仍然失败。
(工作失败)
工作仍然失败。
(工作成功)
工作已经恢复。
额外的"工作仍然失败"作业首次开始失败时的消息。有没有办法使用post
条件?
或者,如何以另一种方式实现此行为?我已经在post { always { // decide which message is appropriate } }
做了一个通行证,但还没有找到如何确定以前版本的状态。