jenkins - 限制 Jenkins 管道仅在特定节点上运行

标签 jenkins jenkins-pipeline

我正在构建将广泛使用 Jenkins piplines 的作业。我们的节点是按项目的标签指定的,但与常规作业不同,管道构建似乎没有“限制该项目可以运行的位置”复选框。如何指定管道将在哪个节点上运行,就像我对常规作业所做的那样?

最佳答案

在执行节点步骤时指定所需的节点或标记:

node('specialSlave') {
   // Will run on the slave with name or tag specialSlave
}

参见https://jenkins.io/doc/pipeline/steps/workflow-durable-task-step/#node-allocate-node有关 node 参数的扩展说明。

编辑 2019: 这个答案(和问题)是在 2017 年做出的,当时 Jenkins 管道只有一种风格,即脚本化管道,从那时起添加了声明式管道。因此,上述答案对于脚本化管道来说是正确的,有关声明性管道的答案,请参阅下面的其他答案。

关于jenkins - 限制 Jenkins 管道仅在特定节点上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42652533/

相关文章:

jenkins - 错误 : Could not find credentials entry with ID '${TEST}'

jenkins - 由 Jenkins 管道中的参数化 Cron 触发

groovy - 在 Jenkinsfile 中调用可变参数函数会意外失败

Jenkins 符号链接(symbolic link)脚本语法

jenkins - 为什么会出现这个错误? "No such property: Entry for class: java.util.Map"

jenkins - Kubernetes yaml 的服务器端验证

shell - 当通过 Jenkins 管道中的 shell 脚本运行 ansible playbook 时,回显输出被缓冲并且不会实时显示

jenkins - 当我检查环境变量时,简单的Jenkins管道失败

maven - Jenkins Pipeline - 无法连接到 Docker 守护进程

jenkins - Jenkins Free style Job 中调用 ansible-playbook 的权限被拒绝消息