我有一条Jenkins管道,计划每4小时触发一次。但是,我的要求是,一旦构建失败,我希望构建更加频繁地进行,并不断发送提醒,提醒构建已中断。简而言之,构建时间表必须取决于先前构建的状态。
詹金斯有可能吗?
谢谢
答案 0 :(得分:0)
我想不出直接的方法,但是您可以找到解决方法。您可以具有相同作业的副本(我们称其为作业“ B”),并在第一个作业的构建失败时触发它(将其称为作业“ A”)。现在,如果B再次失败,则可以重新触发它(B)(增加一些等待时间)并在失败后发送通知,继续进行直到它通过。如果您使用脚本化的Jenkins管道,则将以一种更容易的方式完成此操作。希望这个答案能以某种方式对您有所帮助。
答案 1 :(得分:0)
在脚本化管道中,您可以执行以下操作:
def triggers = []
if(currentBuild.getPreviousBuild().result != 'SUCCESS') {
triggers << cron('0 */1 * * *') // every hour
} else {
triggers << cron('0 */4 * * *') // every 4 hours
}
properties ([
pipelineTriggers(triggers)
])
node {
...
}