如何访问作业dsl中的字符串参数

时间:2017-02-02 11:59:24

标签: jenkins groovy jenkins-job-dsl

我将模板作业以及SVN Branch URL作为字符串参数传递给job-dsl脚本。 (使用参数化构建选项)。

def template = "${template_job}"
def url = "${svn_url}"
job('example') {
  using('template')
 configure { node ->
    node / scm / branches / 'hudson.scm.SubversionSCM_-ModuleLocation' / name('url')
  }
}

但我面临的错误如下:

Processing provided DSL script
ERROR: (script, line 1) No signature of method: script.$() is applicable for argument types: (script$_run_closure1) values: [script$_run_closure1@79b72972]
Possible solutions: is(java.lang.Object), run(), run(), any(), job(java.lang.String), any(groovy.lang.Closure)

有关如何访问job-dsl中的字符串参数的任何建议?感谢。

1 个答案:

答案 0 :(得分:3)

您不需要将参数包装在字符串中。它们已经是字符串了。如果您的参数为template_jobsvn_url,则应该有效:

job('example') {
  using(template_job)
  configure { node ->
    node / scm / branches / 'hudson.scm.SubversionSCM_-ModuleLocation' / name(svn_url)
  }
}