I wasn't able to make it work, so I'm using groovy script instead. More 
work, but also more freedom:
import jenkins.*
import jenkins.model.*
import hudson.*
import hudson.model.*

class Globals {
    static started = new Date()
}
println "Started ${Globals.started}"

void printFinish() {
    def finished = new Date()
    def duration = groovy.time.TimeCategory.minus(finished, Globals.started)
    println "Finished: ${finished} in ${duration}"
}  
  
hudson.model.queue.QueueTaskFuture start(String fullName) {
    println "Starting " + fullName
    def p = Hudson.instance.getJob(fullName)
    def f = p.scheduleBuild2(p.quietPeriod, new 
hudson.model.Cause.UpstreamCause(build))
    return f
}

void wait(p) {
    def b = p.get()
    println b.project.name + " #" + b.number + " " + b.result + " in " + 
b.durationString
    if(b.result.isWorseThan(hudson.model.Result.UNSTABLE)) {
        printFinish()
        build.getExecutor().interrupt()
    }   
}

def p = "QAF_103_"
def bridge = start(p + "Eclipse_Bridge")
def doc = start(p + "Doc")
def linux32 = start(p + "Build_Linux32")
def linux64 = start(p + "Build_Linux64")
def windows32 = start(p + "Build_Windows32")
def windows64 = start(p + "Build_Windows64")
def solaris64 = start(p + "Build_Solaris64")
wait(bridge)
def eclipse = start(p + "Eclipse")
wait(doc)
def cms = start(p + "CMS")
wait(windows32)
def vs = start(p + "VS")
wait(linux32)
def plinux32 = start(p + "Package_Linux32")
wait(linux64)
def plinux64 = start(p + "Package_Linux64")
wait(eclipse)
wait(plinux32)
wait(plinux64)
def plinux = start(p + "Package_Linux")
wait(windows64)
wait(vs)
def pwindows = start(p + "Package_Windows")
wait(solaris64)
def psolaris = start(p + "Package_Solaris")
wait(plinux)
wait(pwindows)
wait(psolaris)
printFinish()

Output:

Started Tue Mar 25 12:23:21 GMT 2014
Starting QAF_103_Eclipse_Bridge
Starting QAF_103_Doc
Starting QAF_103_Build_Linux32
Starting QAF_103_Build_Linux64
Starting QAF_103_Build_Windows32
Starting QAF_103_Build_Windows64
Starting QAF_103_Build_Solaris64
QAF_103_Eclipse_Bridge #6 SUCCESS in 21 sec
Starting QAF_103_Eclipse
QAF_103_Doc #15 SUCCESS in 15 min
Starting QAF_103_CMS
QAF_103_Build_Windows32 #14 SUCCESS in 28 min
Starting QAF_103_VS
QAF_103_Build_Linux32 #16 SUCCESS in 21 min
Starting QAF_103_Package_Linux32
QAF_103_Build_Linux64 #15 SUCCESS in 31 min
Starting QAF_103_Package_Linux64
QAF_103_Eclipse #7 SUCCESS in 2 min 15 sec
QAF_103_Package_Linux32 #8 SUCCESS in 1 min 7 sec
QAF_103_Package_Linux64 #7 SUCCESS in 51 sec
Starting QAF_103_Package_Linux
QAF_103_Build_Windows64 #14 SUCCESS in 43 min
QAF_103_VS #10 SUCCESS in 3 min 35 sec
Starting QAF_103_Package_Windows
QAF_103_Build_Solaris64 #15 ABORTED in 2 hr 18 min
Finished: Tue Mar 25 14:49:55 GMT 2014 duration 2 hours, 26 minutes, 34.363 
seconds


-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to