我有一个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()
}
}
当我试图在一个从系统中执行管道时,我的问题出现了。在这种情况下,上述负载会导致错误
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()
}
}
这不是很有效,我不想只使用master来加载文件。关于如何在从节点上加载Groovy scipt,您有什么建议吗?
非常感谢。
首先,上面的错误java。io。IOException:java。io。FileNotFoundException:/var/lib/jenkins/utils/utils。groovy(没有这样的文件或目录)是在从节点上执行时尝试加载文件时导致的。但该文件存储在/var/lib/jenkins/utils/utils中。groovy在主节点中,我想这是另一台计算机和另一个文件系统。所以,这个错误是合乎逻辑的。
当您在另一个节点(计算机、服务器等)上执行一些管道操作时,并且要加载文件,您需要将其存储在该计算机(从机)中并从那里加载它-因此路径必须根据文件在从机中的位置。
因此,我建议:
我想在詹金斯增加一个奴隶。我遵循了https://wiki.jenkins-ci.org/display/jenkins/step+by+step+guide+to+set+up+master+和+slave+machines中的步骤。 有什么想法可能会出问题吗? 我检查过了,我确实有连接权限。
问题内容: 我已经配置了一个jenkins ubuntu奴隶,我想在它上运行我的gradle构建(与gradle插件)。问题是,当运行詹金斯构建工作时,我得到: 在从属服务器(相同用户)的命令行上运行相同的gradle命令时,它将成功运行。 问题答案: 找到了解决方法!我已经开始使用gradle包装器来运行gradle构建。我做了两件事: 按照本页上的说明创建gradlew(和其他文件)并在我的存
我有一个詹金斯大师,能够从CodeCommit中提取代码。我还设置了一个jenkins slave,这个项目有一个Dockerfile来构建一个图像。当我尝试执行shell命令时, 我得到以下错误:
我希望使用Jenkins创建一个CI/CD管道,其中我希望添加一个K8s主节点作为Jenkins主设置的从节点。我的问题是这是个好主意吗?我计划在其中一个主服务器上创建一个用户名Jenkins,将kubeconfig复制给用户,将主服务器连接到这个节点,然后从这个节点运行所有的Kubernetes部署。 有没有更好的办法做到这一点?
对于实际的JNLP连接,如何强制jenkins从机通过其run命令连接到内部主机名? null
经过阅读,我明白了我必须有一个Jenkins主机在场,才能通过Git网络钩子在OpenShift上产生一个Jen金斯奴隶。但是有没有办法在没有詹金斯主人的情况下产生詹金斯奴隶呢? 非常感谢大家!