我正在寻找一种方法,使多个声明式编写的 Jenkinsfile 只能独占运行并相互阻止。它们消耗测试实例,这些测试实例在运行后将被终止,这会在 PR 进来时进行测试时导致问题。
- 我找不到创建 the BuildBlocker plugin 的选项这样做,使用此插件的所有 jenkinsfiles 都没有在我们的插件/Jenkins 版本架构中运行,看起来好像这些
[$class: <some.java.expression>]
从语法生成器导出的字符串在这里不起作用。 - 我找不到运行这些的方法 Locks涵盖管道中涉及的所有步骤。
- 我可以破解文件锁,但这对我进行多节点构建没有帮助。
最佳答案
这个插件也许可以帮助你,因为它允许锁定你之前声明的资源,这样如果资源当前被锁定,任何其他需要相同资源的作业将等待它被释放。 https://plugins.jenkins.io/lockable-resources/
关于Jenkinsfile - 跨多个管道的互斥性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45266650/