小编e.t*_*.t.的帖子

如何将Jenkins管道脚本的各个部分提取到类中?

我想将我的Jenkins管道脚本重构为类以便于阅读和重用.

问题是我这样做时会遇到异常.我们来看一个简单的例子:

当我跑

echo currentBuild.toString()
Run Code Online (Sandbox Code Playgroud)

一切都好

但是当我把它提取到一个类中时:

class MyClass implements Serializable {
    def runBuild() {
        echo currentBuild.toString()
    }
}
new MyClass().runBuild()
Run Code Online (Sandbox Code Playgroud)

我得到一个例外:

Started by user admin
Replayed #196
[Pipeline] End of Pipeline
groovy.lang.MissingPropertyException: No such property: currentBuild for class: MyClass
Run Code Online (Sandbox Code Playgroud)

将管道代码提取到类中的正确方法是什么?

groovy refactoring jenkins jenkins-pipeline jenkinsfile

10
推荐指数
1
解决办法
6494
查看次数