Jenkins管道恢复但没有任何反应

时间:2016-06-29 08:28:06

标签: jenkins jenkins-pipeline

我们有一个Jenkins管道,有几个阶段(管道代码)。其中一个阶段创建了大约40-50个下游作业,并在并行步骤中启动它们。 不幸的是,我们的詹金斯大师每晚重新启动。重新启动后,队列中的每个作业都将丢失,并且当前正在运行的下游作业将因错误而停止。 重新连接子节点后,管道处于恢复状态(=>控制台输出:恢复构建),但没有任何反应。

现在我有以下问题:

  • 管道试图恢复时到底发生了什么?管道是否从阶段1开始?
  • 是否可以重新排队队列中的下游作业?

1 个答案:

答案 0 :(得分:0)

仅在流程中使用的每个作业中,选择“如果主服务器重启,则不允许管道恢复”。在这种情况下,此问题将不会发生(具有恢复状态)。

options {
  disableResume()
}

作为恢复的解决方案-使用一些“队列”检查器。例如:

  1. 对于每个构建请求,在您的主要工作将检查文件是否存在的某个文件夹中创建一个名为json / yaml的唯一文件(构建配置以启动)。
  2. 如果找到了这样的文件,请启动主作业(配置“不允许并发构建”)。为工作做些超时
  3. 启动主作业后-删除文件...

或者在AWS中使用一些SQS队列...