你如何在一个步骤花费一定时间后终止 drone.io (0.8.1) 作业?

How do you kill a drone.io (0.8.1) job after a step takes a certain amount of time?

我正在使用无人机 0.8.1。我有一些 UI 测试 运行 作为步骤,有时它们会卡住并可能挂起长达一个小时。我宁愿在一个步骤花费的时间超过设定的时间(比如 5 分钟,因为我知道每个步骤只需要大约 30 秒即可完成)后终止整个无人机构建,而不是等待一个小时才能发现我的无人机建造被取消。

本质上,我只是想要一种表达方式"Is this drone step taking more than X minutes? Then kill the entire build"。

无论如何我都没有在文档中看到这样做,但想知道是否有人已经找到了这样做的方法?非常感谢!

您应该可以使用 timeout 命令实现此目的。

此命令允许您限制命令的时间。将它添加到您的图像并在每个命令前加上它。

如果超过时间限制,它也会以非零代码退出,因此您的步骤将自动失败。

用法示例:

commands:
    - timeout 30s doSomethingLong.sh