我有一个 jenkins 管道,它加载一个像这样的 groovy 实用程序脚本:
Utils = load('/var/lib/jenkins/utils/Utils.groovy')
当我在主节点上执行管道时,一切都很好。在这种情况下,我可以在管道中使用我的类 Utils 中的方法。
node('master'){
stage('stage1'){
def Utils = load('/var/lib/jenkins/utils/Utils.groovy')
Utils.doSomething()
}
}
当我尝试在slave中执行我的管道时,我的问题出现了。在这种情况下,上面的负载会导致错误
java.io.IOException: java.io.FileNotFoundException: /var/lib/jenkins/utils/Utils.groovy (没有这样的文件或目录)
为了避免这个错误,在管道中,我像这样在主节点中加载文件
node('master'){
stage('stage1'){
Utils = load('/var/lib/jenkins/utils/Utils.groovy')
}
}
node(){
stage('stage2'){
Utils.doSomething()
}
}
这不是很有效,我不想只使用主节点来加载文件您对如何在从节点上加载 Groovy scipt 有任何建议吗?
谢谢