我需要就如何控制Jenkins Slaves的使用方式/触发乔布斯的方式提出一些建议。
背景/约束:
我有一系列10个作业,使用 “其他项目上的触发器参数化构建” 选项Parameterized Trigger插件一个接一个地运行
这些作业的每个构建必须在同一节点上运行(我是通过使用 “在同一节点上构建” 来实现的,这也是在参数化的构建插件来自NodeLabel插件)。
我有5个奴隶(每个奴隶的当前执行人数是1但我在这里可以提出建议......)
一旦Slave被Build Sequence占用,就不能在其上运行其他作业。当我只有一个奴隶时,我强制执行它的方式是在下游项目建设时使用 “块构建”
我在触发第一个Job时配置奴隶的方式是以下之一:(它们都没有解决我的问题)
一个。使用 “限制此项目的运行位置” ,并在其中添加一个所有相关从属设备将指向的标签。
湾使用“此构建已参数化”选项(Parameterized Trigger插件),然后添加 “节点” 参数以及用户可以选择的从属列表从
我想要达到什么目标?
当用户在构建序列中分解第一个作业的构建时,此构建将在一次空闲从属上完成。 (我的意思是一个目前无能为力的奴隶)
如果没有空闲的从属,那么它将加入其中一个的队列(无关紧要)
有任何建议如何解决?
谢谢!
答案 0 :(得分:0)
尝试将$ {NODE_NAME}作为NodeLabel传递给下游作业的构建后触发器。如果可行,您可能需要将每项工作都通过。
答案 1 :(得分:0)
尝试node-label参数插件。你可以使乔布斯运行在该运动中自由的奴隶节点