我使用Jenkins共享库已经有一段时间了,但是突然弹出的内容使我有些困惑。我现在不仅尝试创建步骤,还尝试在共享库中创建完整的声明性管道。
无论如何,我发现,当我的管道直接在call
方法中定义时,这很好用。一旦执行简单的函数调用,就会出现类似以下错误:
hudson.remoting.ProxyException: groovy.lang.MissingPropertyException: No such property: any for class
要清楚,这是工作代码:
def call() {
pipeline {
agent any
stages {
stage("Stage") {
steps {
echo "hi"
}
}
}
}
}
这是无效代码:
def call() {
execute()
}
def execute() {
pipeline {
agent any
stages {
stage("Stage") {
steps {
echo "hi"
}
}
}
}
}
出于本文之外的原因,我们尝试在步骤中添加一些通用性和参数检查,这就是为什么我希望能够使用额外的函数调用的概念...