如何向我的Jenkins示例添加/编辑可在DSL脚本中访问的新代码?上下文如下
我继承了一个Jenkins示例。这笔遗产的一部分包括在闹鬼的房子里过夜,通过Jobs DSL plugin编写一些新的自动化in groovy。因为我害怕毁掉我们的Jenkins示例,所以我的第一步是设置一个本地开发示例。
在我的本地开发示例上运行我们现有的DSL脚本时遇到了问题--我在本地服务器上的构建失败,Jenkins错误控制台中显示以下内容。
Processing DSL script jobs.groovy
ERROR: startup failed:
jobs.groovy: 1: unable to resolve class thecompanysname.jenkins.extensions
有问题的脚本是这样开始的。
import thecompanysname.jenkins.extensions
use(extensions) {
def org = 'project-name'
def project = 'test-jenkins-repo'
def _email = 'foo@example.com'
因此,据我所知,似乎是前辈编写了一些他们正在导入的定制Groovy代码
import thecompanysname.jenkins.extensions
我不清楚的是
1.此代码所在的位置
1.如何在我们真实的Jenkins示例中找到它
1.如何向本地示例添加
具体的答案是受欢迎的,因为我们的这里是你如何学习钓鱼答案。
2条答案
按热度按时间6kkfgxo01#
虽然可能还有其他方法来实现这一点,但经过一番探索后,我发现
1.我安装的Jenkins示例安装了较旧版本的Jobs DSL plugin。
1.此版本的作业DSL插件允许您在指向其他
jar
文件的Process DSL Builds作业部分中设置额外的classpath
。1.这些JAR文件可以让您访问groovy脚本中的其他类(即
thecompanysname.jenkins.extensions
)不幸的是,较新版本的乔布斯DSL插件已经删除了这个选项,目前还不清楚是否可以重新添加它。然而,这是另一个问题。
z8dt9xmd2#
配置全局安全->取消选中“为作业DSL脚本启用脚本安全”。
对我很管用