詹金斯管道轻型执行器仍然是重量级的

时间:2018-10-02 11:45:25

标签: jenkins continuous-integration jenkins-pipeline pipeline

如何确保在轻量级詹金斯执行器中执行阶段?

假设我有以下Jenkinsfile

pipeline {
    agent any
    stages {
        stage("Build") {
            // build
        }
        stage("Review") {
            agent none
            steps {
                input "Deploy to production?"
            }
        }
        stage("Promotion") {
            steps {
                echo "Promotion"
            }
        }
    }
}

在阶段Review中,我指定了agent none,据我所知,这意味着詹金斯将在此阶段使用一个举重执行器。但是,执行器仍然是舞台上的重量级人物,并且在Jenkins奴隶上用尽了宝贵的执行器之一。

Jenkins上是否存在可能禁用轻量级执行程序的设置?是否有启用轻量级执行程序的插件?我的Jenkinsfile有缺陷吗?

1 个答案:

答案 0 :(得分:0)

您必须在一开始使用agent none来启用flyweight执行程序。

pipeline {
    agent none
    stages {
        stage("Build") {
            agent any
            steps {
                // build
            }
        }
    }
}

但是这样做会限制您可以在诸如environment之类的设置块中执行的操作,因为阶段之外没有可用的真实计算机。这可能意味着,如果您没有使用agent none开始,则必须重写很多管道。