2014-02-17 235 views
2

构建完成时是否有触发相同作业的方法?我有一项工作需要运行,直到我手动中止工作。有没有办法做到这一点?在Jenkins完成构建后触发相同的jenkins作业

+0

最简单的方法是通过调度程序来运行它来定期运行。您需要知道需要多长时间并相应地进行调整。除非你明确地将它设置为并且它将在队列中等待,直到它清除为止 – KeepCalmAndCarryOn

回答

3

这是一个非常疯狂的请求。你确定这就是你想要做的?如果您只想保持最新状态,您可以在SCM系统发生变化时创建作业 - 甚至可以将文件系统作为SCM使用。

如果你真的想要这样做,这是可能的。你不能只是告诉它触发自己,但你可以使用REST api。

添加壳生成步骤与线

curl -X POST http://localhost:8080/job/Tester/build 

和新的工作每次运行构建时将获得计划。

+0

原因是我需要在一段时间间隔内持续运行这些构建,否则作业将不会与上次运行同时运行。但是这个时间间隔并不是一直都是固定的。另外我很好奇另一件事。有没有办法连续运行相同的构建。例如,构建结束了,它会重新开始(构建代码,运行测试),而不开始新的构建 – newperson

+1

我想这取决于你在做什么:)虽然传统意义上的“构建”,但重复代码没变的时候编译不成就很多。这是我问的唯一原因。 –

+2

如果构建关联了单元测试或系统测试,我可以看到这很有用。单元测试可能正在寻找硬件故障,或者系统测试可能会订阅在不同时间更新的实时数据。 –

7

最简单的方法是添加构建相同项目的构建后步骤。将“构建后行为” - “构建其他项目” - “构建项目”设置为项目名称,并且将永久循环。

0

在“作业配置”页面的“构建触发器”下有“构建其他项目后构建”,您可以在其中指定在哪个项目之后构建哪个项目。因此,如果你想持续运行一个特定的工作,你可以在“建立其他项目之后构建”下的“要观察的项目”字段中添加项目名称,也可以使用选项运行它: - 仅当构建稳定时触发
触发即使构建不稳定
触发即使构建失败

+0

配置完成后,您只需触发一次,它将连续运行 –

相关问题