詹金斯延迟了工作A和B之间一段时间的工作延迟

时间:2018-01-20 13:40:16

标签: jenkins

我不明白period到底在做什么。尝试使用它时没有任何反应。

我有一个构建作业,它生成一个二进制文件,然后是两个下游项目,称为作业A和作业B,我希望A和A之间有一个延迟。 B - 作业B需要在作业A完成后10分钟开始。

在其他项目之后触发参数化构建或构建的任何条件?

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

目前,没有选项可以在后期构建操作中为下游作业设置延迟。

或者,您可以通过在作业A的构建步骤结束时添加sleep 600(Shell)来实现此目的。

答案 1 :(得分:0)

vivekyad4v提供的答案应该有效。请记住,他说应该在构建部分添加操作。

如果您不想/不能使用Shell,则可以通过执行 Windows批处理命令来模拟等待。它也位于构建步骤部分,而不是构建后。

例如:

ping 127.0.0.1 -n 30 

此命令将ping本地主机(127.0.0.1)30次,大约每秒1次ping,总计为30秒。

对于一整套选项,ping只能在您的cmd中本地调用ping并查看您需要的内容。您也可以在本地运行示例命令,并在将其注入Jenkins之前使用它。

所以,如果我理解你的工作组织正确,你会想要:

  1. 运行构建二进制文件的作业
  2. 运行作业A"测试"以及所有必要的构建后操作
  3. 运行作业B"验证",在您的案例ping 127.0.0.1 -n 600中,通过ping作为第一个构建步骤(执行Windows批处理命令),模拟等待10分钟,之后执行其他构建步骤;以及后期制作行动。
  4. [编辑22.01.2017:更改了ping命令的主体。最初它是ping 1.1.1.1会导致ping请求超时,可能会将Jenkins构建标记为失败,即使等待期是正确的]

相关问题