Jenkins的JobDSL队列与参数

时间:2018-04-04 19:42:35

标签: jenkins groovy jenkins-job-dsl

有没有人知道您是否可以从JobDSL运行具有参数的Jenkins工作?

我使用了队列https://jenkinsci.github.io/job-dsl-plugin/#path/queue

但根据文档,它只接受字符串或Job对象。也许有一种方法可以用Job对象来做,但不清楚。来自JobDSL docs:

def example1 = job('example-1') {
   displayName('first example')
}

queue(example1)

job('example-2') {
    displayName('second example')
}

queue('example-2')

1 个答案:

答案 0 :(得分:2)

遇到同样的问题,无法在文档中找到答案,所以我现在正在考虑按照example使用系统groovy脚本。

def job = Hudson.instance.getJob('MyJobName')
def anotherBuild
try {
    def params = [
      new StringParameterValue('FOO', foo)
    ]
    def future = job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
    println "Waiting for the completion of " + HyperlinkNote.encodeTo('/' + job.url, job.fullDisplayName)
    anotherBuild = future.get()
} catch (CancellationException x) {
    throw new AbortException("${job.fullDisplayName} aborted.")
}

我正在使用Jenkins 2.116和Groovy插件2.0