小编Nic*_*olt的帖子

在 System Groovy 中暂时禁用 Jenkins 服务器上的 SCM 轮询

我们有一个 Jenkins 服务器,它运行着 20 到 30 个作业。

由于构建过程相当复杂,我们将实际构建分解为 1 个子构建,其中一些可以同时运行,其他则必须遵循之前的构建步骤。因此,我们将每个构建步骤分为 3 组,在构建进行时阻止。

例如:

Main Build : GroupA  : Builds A1, A2 & A3

           : GroupB  : Builds B1, B2 & B3

           : GroupC  : Builds C1, C2, C3, C4, C5 & C6

           : GroupD  : HW_Tests T1, T2, T3, T4 & T5


Builds B1, B2 & B3 rely on the output from A1, A2, A3 etc
Run Code Online (Sandbox Code Playgroud)

由于构建和测试几乎 24/7 运行,我发现很难安排 Jenkins Master 的重启。选择“准备关闭”将意味着新作业排队,但它总是会阻止正在运行的作业,因为使用我上面的示例,如果 GroupB 处于活动状态,构建 C1、C2 等也将排队,并且主构建将被封锁。

作为一种解决方法,我想在所有正在运行的作业完成之前禁用服务器上的 SCM 轮询。这将防止触发新作业,但也允许正在运行的作业完成。然后我可以重新启动 Jenkins …

version-control groovy jenkins

5
推荐指数
2
解决办法
2863
查看次数

标签 统计

groovy ×1

jenkins ×1

version-control ×1