Jenkins多配置项目在不同节点上并发执行

时间:2016-05-20 21:17:26

标签: jenkins jenkins-plugins

我在Jenkins 2.5中配置了一个多配置作业,该作业跨产品的不同配置版本以及不同的操作系统映像执行测试套件。

作业配置为使用不同的OS节点(Windows 7,Windows 8.1,Windows 10,POS Ready 7等)运行。在这些操作系统中的每一个上,我们然后使用不同的配置运行测试,这些配置必须一次运行1个。

目前,多配置项目将在各种计算机上顺序运行每个测试方案。作业配置为启用Execute concurrent builds if necessary标志,但作业不并行运行。

将节点设置Node Configuration http://i.stack.imgu用于不同的操作系统映像,然后使用不同配置的设置,即使作业按顺序运行,也会在同一操作系统上执行多次执行。

我希望同时在每个节点上运行一个配置,以便每个操作系统映像运行一个配置。有4个OS和3个配置,有12个工作要运行。每个小时1小时,这是12小时,如果作业并行运行(每个操作系统一个),那么将运行3种不同的配置,并且应该在大约3小时内完成。

理想情况下,执行将是: (Windows 7 / Config1)& (Windows 8.1 / Config1)& (Windows 10 / Config1)全部同时运行,然后每个操作系统使用Config2,然后每个操作系统使用Config3。正如我所指出的,即使每个操作系统同时运行测试,在任何操作系统上混合配置(config1或config2或config3),并且每个操作系统只运行1次配置测试一段时间。

Job Configuration Options r.com/Qt83L.png

1 个答案:

答案 0 :(得分:4)

我建议您使用Multijob PluginNode Label Parameter插件一起使用。

配置它非常简单 -

  1. 添加新的自由样式作业 - 添加节点参数和其他必需参数。此作业将运行您的逻辑(现在正在运行多配置作业)
  2. enter image description here

    1. 添加新的多作业作业(确保您选择的类型是多作业!) enter image description here
      • 在构建部分添加多作业阶段
      • 向上面创建的作业添加3个触发器,在每个触发器的多配置作业中发送您正在使用的每个节点名称,以及 要运行的配置。例如,你将触发 使用预定义参数指定节点和测试的作业 您要运行的配置。
      • 为每个测试配置重复添加多作业阶段。
    2. 实施例: enter image description here

      每次测试配置时,此配置每次运行3次,因为一个阶段下的任何内容都是并行运行的。

      祝你好运!