詹金斯在奴隶之间建立分配

时间:2013-07-14 12:21:11

标签: jenkins

我需要就如何控制Jenkins Slaves的使用方式/触发乔布斯的方式提出一些建议。

背景/约束:

  1. 我有一系列10个作业,使用 “其他项目上的触发器参数化构建” 选项Parameterized Trigger插件一个接一个地运行

  2. 这些作业的每个构建必须在同一节点上运行(我是通过使用 “在同一节点上构建” 来实现的,这也是在参数化的构建插件来自NodeLabel插件)。

  3. 我有5个奴隶(每个奴隶的当前执行人数是1但我在这里可以提出建议......)

  4. 一旦Slave被Build Sequence占用,就不能在其上运行其他作业。当我只有一个奴隶时,我强制执行它的方式是在下游项目建设时使用 “块构建”

  5. 我在触发第一个Job时配置奴隶的方式是以下之一:(它们都没有解决我的问题)

    一个。使用 “限制此项目的运行位置” ,并在其中添加一个所有相关从属设备将指向的标签。

    湾使用“此构建已参数化”选项(Parameterized Trigger插件),然后添加 “节点” 参数以及用户可以选择的从属列表从

  6. 我想要达到什么目标?

    • 当用户在构建序列中分解第一个作业的构建时,此构建将在一次空闲从属上完成。 (我的意思是一个目前无能为力的奴隶)

    • 如果没有空闲的从属,那么它将加入其中一个的队列(无关紧要)

    有任何建议如何解决?

    谢谢!

2 个答案:

答案 0 :(得分:0)

尝试将$ {NODE_NAME}作为NodeLabel传递给下游作业的构建后触发器。如果可行,您可能需要将每项工作都通过。

答案 1 :(得分:0)

尝试node-label参数插件。你可以使乔布斯运行在该运动中自由的奴隶节点