如何锁定 buildbot 中的步骤
我有一个由步骤 A、B 和 C 组成的构建器;第二个构建器由步骤 U、V 和 W 组成:如何“阻止”步骤 U,直到步骤 A 和 B 完成?所以基本上我希望步骤 C 和 U 彼此并行运行。
我的第一个想法是引入两个互锁,a和b:步骤A要求锁a,步骤B要求锁b,步骤U同时要求a和b。
但在这种情况下,执行顺序是 A->U->B,而不是我想要的 A->B->U。原因:步骤贪婪锁。步骤 U 由于锁 a 而被阻塞,但尽管如此,它仍然需要锁 b。这会阻塞步骤 B,直到步骤 U 完成。
I have a builder which consists of steps A, B, and C; and a second builder which consists of steps U, V, and W: How can I 'block' step U until steps A and B are finished? So basically I want that steps C and U run parallel to each other.
My first idea was to introduce two interlocks, a and b: step A demands lock a, step B demands lock b, and step U demands a and b at the same time.
But in this situation the execution order is A->U->B, and not A->B->U as I want it to be. The reason: steps are greedy for locks. Step U is blocked because of lock a, but despite that it requires lock b. And this blocks step B until step U is finished.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试使用
可触发
用于执行步骤 U、V、W 的构建器的调度程序。在第一个构建器中添加一个步骤触发器
在“B”之后和“C”之前。
这应该会给你带来想要的行为......
Try using a
Triggerable
scheduler for your builder which performs steps U,V,W. In the first builder add a stepTrigger
after "B" and before "C".This should bring you the desired behaviour ...