首页 > 解决方案 > 与许多奴隶并行分布——这个概念在詹金斯中是如何工作的?

问题描述

我在管道中遇到了一个选项,如果我们不提及节点名称而只提及节点 jenkins 将智能地找到哪个节点是空闲的并将作业分配给其中一个空闲节点。下面的示例代码。

parallel (
    "stream 1" : { 
        node {
            build 'Job1'
        }
    },
    "stream 2" : {
        node {
            build 'Job2'
        }
    }
)

我能否获得有关它如何工作的更多信息,我们能否提供一个节点列表,从中选择一个空闲节点?是否将使用一个从站中的所有执行器?

参考文档:https ://www.cloudbees.com/blog/parallelism-and-distributed-builds-jenkins

标签: jenkinsjenkins-pipelinejenkins-pluginsjenkins-groovy

解决方案


您可以通过为多个节点分配相同的标签,让 Jenkins 从子集中选择一个节点。

此选项可在“管理 Jenkins -> 管理节点 -> {选择其中一个节点} -> 配置”下找到。

您可以使用以下示例中的标签,而不是按名称选择节点。

parallel (
"stream 1" : { 
    node('linux') {  // runs on one of the nodes labelled as linux nodes
        build 'Job1'
    }
},
"stream 2" : {
    node('named_node_foo'){  // only runs on node named_foo_node
        build 'Job2'
    }
}

)


推荐阅读