一尘不染

我可以在声明性Jenkins管道中定义多个代理标签吗?

jenkins

我正在使用声明性Jenkins管道来运行我的一些构建管道,并且想知道是否可以定义多个代理标签。

我有许多构建代理与我的Jenkins挂钩,并且希望此特定管道能够由具有不同标签的各种代理(但不能由ALL代理)构建。

更具体地说,假设我有2个代理,标签为“小”,4个为标签“中”,有6个为标签“大”。现在,我有一个非常节省资源的管道,我希望仅在“小型”或“中型”代理上执行,而不在大型代理上执行,因为这可能会导致较大的构建在队列中等待不必要的长时间。

到目前为止,我所看到的所有示例都只使用一个标签。我尝试过这样的事情:

 agent { label 'small, medium' }

但是失败了。

我正在使用Jenkins Pipeline插件的2.5版。


阅读 205

收藏
2020-07-25

共1个答案

一尘不染

您可以在Jenkins安装中看到“管道语法”帮助,并看到示例步骤“节点”参考。

您可以使用exprA||exprB

node('small||medium') {
    // some block
}
2020-07-25