Jenkins 管道作业总是尝试从主节点开始



我已经限制了我的 Jenkins 主服务器执行的构建,因为它的所有从属服务器在 Node 安全设置中都比它更强大。

我的意思是:"管理 Jenkins" -> "管理节点" -> master -> "配置" ->选中"限制在此节点上运行的作业" -> ">

作业限制" -> "正则表达式"。然后像^exact_allowed_job_name$一样输入正则表达式。

现在,管道作业停滞在挂起状态("正在等待主服务器上的下一个可用执行程序"(。

我找不到任何方法来指定应在作业设置中执行此作业的从属,例如自由式作业中的"限制可以运行此项目的位置"复选框。

可能吗?

指定标签无济于事。这是我尝试过的第一个。

无论如何,这个简单的管道都需要主节点,无论标签'special'

#!/usr/bin/env groovy
node('special') {
   stage('checkout') {
       echo 'checkout'
   }
}

这条管道也被卡住了。

#!/usr/bin/env groovy
pipeline {
    agent none
    stages {
        stage('Checkout'){
            agent {
                label 'special'
            }
            steps {
                echo 'Checkout'
            }
        }
    }
}

谢谢,@Quantic指向文档。

根据它,

每个 Pipeline 构建本身都使用蝇量级执行器在主服务器上运行——一个不占用任何重要计算能力的未计数插槽。

由于我已经设置了,该作业名称必须与正则表达式匹配,在我的例子中,正则表达式是单个允许作业的确切名称,因此我有效地禁用了所有管道脚本。

此外,这是一个已知的错误:https://issues.jenkins-ci.org/browse/JENKINS-31866

此错误的优先级较低,因此管道插件对我来说不是一个选择。

最新更新