Jenkins矩阵构建:如何构建一次,并将二进制文件发布给奴隶



我有一个Jenkins Matrix构建,它将我的Android测试并行地拆分到5个节点上。目前,这5个节点中的每一个都必须构建我的Android二进制文件,这需要几分钟的时间(这意味着我要为这个构建步骤所需的虚拟机数量支付6倍的费用)。

有人知道我如何构建一次二进制文件,并将生成的工件发布给Matrix构建中的从属对象吗?

我很确定我可以通过使用Jenkins的"MultiJob项目"来实现这一点,但这有一个缺点,那就是我需要完全单独配置主作业和从作业。

有人有更好的主意吗?

更好的是,当模拟器在所有从属设备上启动时,我能让Android构建在主设备上运行吗?!那太神奇了。。。

我将把事情分为两个作业:一个常规(自由式)作业,用于构建应用程序,在成功后归档APK,并触发测试(矩阵)作业的下游构建。

矩阵作业将使用Copy Artifact插件将刚刚编译的APK拉入每个矩阵变体的工作空间。无论构建运行在哪里,或者测试构建运行在什么地方,APK都将自动复制到正确的机器上。

您还可以通过在每个(虚拟)机上运行多个模拟器来节省资金,因为通常不需要隔离模拟器。

最新更新