如何配置jenkins多配置构建和测试

时间:2011-07-01 23:40:11

标签: jenkins multi-configuration

我需要构建和测试多种配置:linux,osx和 Solaris操作系统。我有标记为“linux”,“osx”和“solaris”的从节点。上 每个配置,我想(a)构建(b)运行冒烟测试 (c)如果烟雾测试通过,则进行全面测试,或许更多。

我认为多配置作业可能就是答案,所以我设置了一个 多配置构建作业,它在每个上启动并发构建 OS。构建作业将触发下游烟雾测试构建,其中包含 转,触发全面测试工作。

我遇到了以下问题

  1. 如果其中一个配置失败,则作业整体失败,并且 詹金斯不会解雇任何下游工作(例如,如果solaris构建 如果失败,Jenkins将不会对osx和。进行冒烟测试或完整测试 Linux版)。

  2. solaris构建所需的时间大约是其他的两倍(在 一小时的顺序),我更喜欢linux和osx冒烟测试 等待solaris构建完成。

  3. 这是否意味着我留下了手工制作三个工作管道,并且 把它们放在一个“全部开始”的工作(即创建和手工链接) 以下工作)?

    build-linux   smoke-test-linux   full-test-linux
    build-osx     smoke-test-osx     full-test-osx
    build-solaris smoke-test-solaris full-test-solaris
    

    我是否错过了一些明显的东西?

2 个答案:

答案 0 :(得分:4)

据我所知,答案是创建3个矩阵作业,每个系统一个。然后,他们将有3个subjobs(构建,烟雾测试,全测试),并将构建作业作为试金石。

答案 1 :(得分:3)

您是否考虑过将构建,冒烟测试和完整测试合并到一个多配置作业中?除了有点乱,这应该适合你。

回答第一个问题:无论结果如何都要触发下游作业,使用触发参数化构建在完成时运行(始终触发),然后检查“构建无参数”

要回答您的第二个问题:要么使用全面的多配置(矩阵)作业,要么使用三个单独的作业流,如您所述。更新:您可以为每个步骤(构建,冒烟测试,完整测试)运行3个连续矩阵作业,但这意味着如果任何构建步骤失败,则不会运行任何烟雾测试。