2

Build Flow プラグインを使用してジョブを実行しています。b = build ("JOB1"); のように。1) PASS や FAIL などの JOB1 ビルド ステータスを取得する方法と、その結果に応じて JOB2 を実行する方法を教えてください。のように、正しい構文ではありません

if(b.result == PASS) {
    build("JOB2")
}
else 
{
    build("JOB3");
}

このように、プラグインを提案するか、BUildFlow を使用してジョブのビルド状態を取得する方法を教えてください。

4

1 に答える 1

3

これを見つけました( https://groups.google.com/forum/#!topic/jenkinsci-dev/tWfVfWInaP4 )、

builds = []
ignore(FAILURE) {
    parallel (
       {builds.add(build("foo1", COPY_PATH: params["bar"]))},
       {builds.add(build("foo2", COPY_PATH: params["bar"]))},
       {builds.add(build("foo3", COPY_PATH: params["bar"]))},
    )
}
for (b in builds) {
    out.println "Finished Build : " + hudson.console.HyperlinkNote.encodeTo("/"    + b.getUrl(), String.valueOf(b.getDisplayName())) 
    + " of Job : " + hudson.console.HyperlinkNote.encodeTo('/' + b.getProject().getUrl(), b.getProject().getFullName()) 
    + " with status :" +  hudson.console.HyperlinkNote.encodeTo('/' + b.getUrl() + "console", b.getResult().toString())
    build.setResult(build.getResult().combine(b.getResult()))
}

お役に立てれば

ここからこれを見つけました(http://delivervalue.blogspot.in/2013/06/more-advanced-build-flows-with-jenkins.html

def results = build("ComponentName")
println results.build.result.toString()
于 2015-09-16T04:21:58.290 に答える