首页 文章

Jenkins:在每个节点上只为一个作业运行一个构建

提问于
浏览
0

我们有一个项目,我们有几个Jenkins工作:一种运行交付的工作(A),

一个只进行编译和单元测试的(B)

一个运行集成测试,静态代码分析等(C) .

我们运行四个Jenkins节点(主要三个从属节点),我们的作业是声明性管道作业的混合,并在Jenkins-jobs中手动单击 .

我们只想一次为每个节点运行一次集成测试 . 但是,我们希望运行尽可能多的交付(A)和代码质量(B)构建,因为有执行程序 .

到目前为止,Throttle并发构建(https://github.com/jenkinsci/throttle-concurrent-builds-plugin)插件已满足我们的需求 . 但是,这个插件不支持声明性管道构建,也不支持更新 .

Lockable资源插件(https://github.com/jenkinsci/lockable-resources-plugin)似乎很有希望,但是我们还没有找到任何方法来锁定整个构建,并动态设置资源名称 . 也就是说,当我们开始构建C时,我们希望它锁定"resource_" . 这个插件允许在options指令中设置一个完整的构建锁,但是我们还没有弄清楚如何评估那里的环境变量 .

任何建议都将受到高度赞赏!

1 回答

  • 0

    因此,我们的解决方法是将管道脚本从声明性语法重写为脚本语法 . 然后,节流并发build-plugin作为魅力 .

    当错误https://issues.jenkins-ci.org/browse/JENKINS-49173被修复时,该插件也将使用声明性管道 .

相关问题