Job dsl 复制现有的 Jenkins Job

Job dsl to replicate existing Jenkins Job

我是 groovy 的菜鸟,遇到了适合我要求的 job-dsl Jenkins 插件。

我的要求是复制现有的 Jenkins 作业(比如 A)并创建一个新作业 B,在作业 B 中仅更改为颠覆 URL(在颠覆插件中)。

我尝试开发一个基本的 job-dsl 脚本,如下所示,并从那里进一步开发以满足我的上述要求。

job('ci') {
    description 'Build and test the app.'
    scm {
        svn('https://svn.mydomain.com/repo/project1/trunk')
    }
}

以下是我面临的问题,我试过在没有任何运气的情况下找出答案,非常感谢您的帮助。

Using dsl from string
ERROR: Build step failed with exception
groovy.lang.MissingMethodException: No signature of method: Script1.job() is applicable for argument types: (java.lang.String, Script1$_run_closure1) values: [PROJ-unit-tests, Script1$_run_closure1@199fab4]
Possible solutions: job(groovy.lang.Closure), run(), run(), any(), wait(), dump()

如果某些基本功能不起作用,请尝试将 Job DSL 插件更新到最新版本并尝试使 tutorial 步骤(您可以跳过 #4)正常工作。

详情见上面的评论。