【发布时间】:2017-11-28 07:11:47
【问题描述】:
我知道 Jenkins 的工作流提供了 CPS 和 NonCPS 模型,我想知道它们之间有什么区别,以及 Jenkinsfile 是如何以 CPS 方式解析的?
谢谢!
【问题讨论】:
我知道 Jenkins 的工作流提供了 CPS 和 NonCPS 模型,我想知道它们之间有什么区别,以及 Jenkinsfile 是如何以 CPS 方式解析的?
谢谢!
【问题讨论】:
CPS 的目的是在 Jenkins master 重启后可以恢复流水线执行。
在管道执行期间,代理执行的每一步都存储在主服务器上(IIRC 就像每个步骤对主服务器的 4 次调用)。
由于 CPS 与所有 Groovy 功能不兼容,您有时必须禁用它(或者如果您有一个简单的循环等并希望避免 CPS 引入的开销)。
【讨论】: