let’s assume a pullrequests  triggered a build on a  builder,  before
completing this build if we have some 5 to 6  pullrequests  on the same
branch all PR’s will be queud for individual builds.

I found a solution for running only new job and cancle others

def q = Jenkins.instance.queue

//Find items in queue that match <project name>
def queue = q.items.findAll { it.task.name.startsWith('sample_project') }
//get all jobs id to list
def queue_list = []
queue.each { queue_list.add(it.getId()) }
//sort id's, remove last one - in order to keep the newest job, cancel the rest
queue_list.sort().take(queue_list.size() - 1).each { q.doCancelItem(it) }


but I'm using pipeline script wand when I try to run like below :


"
node("${NODE}") {

        def description = "${PR_NO} ${TITLE}"
        currentBuild.setDescription("${PR_NO}")

        try {
                check_for_queue()
                stage "Check for Build Location"
                sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  build_folder_creation"

                stage "Clone Loadtools"
                sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  clone_load_tools"

                stage "Checkout PEG"
                sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  checkout_peg"

                stage "Update Forest"
                sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  update_forest"

                stage "Get Version"
                //sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  get_version"

                stage "Build"
                //sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  build"

                stage "Push HG"
                //sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  pushHG_peg"

                stage "get_packpath"
                //sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  get_packpath"

                stage "Build links"
                //sh "/projects/ngidelde/HG/Jenkins_Utils/Weekly_PEG_Wraper.sh
${Weekly_Branch}  build_links"

                

        }

        catch (err) {

        currentBuild.result = "FAILURE"
        mail bcc: '', body: "Hello,\n\nJenkins has detected a failed
build on builder PEG while building ${Weekly_Branch}.\nFull details
are available at: ${env.BUILD_URL}.\nSincerely,\n-Jenkins", cc: '',
from: '[email protected]', replyTo: '', subject: "build failure
in PEG on ${Weekly_Branch}", to: '[email protected]'


        throw err
    }

}


@NonCPS
def check_for_queue()
{
def q = Jenkins.instance.queue
def queue = q.items.findAll { it.task.name.startsWith("PEG_PRD_8-5") }
def queue_list = []
queue.each { queue_list.add(it.getId()) }
queue_list.sort().take(queue_list.size() - 1).each { q.doCancelItem(it) }
}



"




giving below error :

groovy.lang.MissingPropertyException: No such property: it for class:
WorkflowScript
        at 
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:53)
        at 
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.getProperty(ScriptBytecodeAdapter.java:458)
        at org.kohsuke.groovy.sandbox.impl.Checker$4.call(Checker.java:243)
        at 
org.kohsuke.groovy.sandbox.GroovyInterceptor.onGetProperty(GroovyInterceptor.java:52)
        at 
org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:308)
        at org.kohsuke.groovy.sandbox.impl.Checker$4.call(Checker.java:241)
        at 
org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:238)
        at 
org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:221)
        at 
org.kohsuke.groovy.sandbox.impl.Checker$checkedGetProperty.callStatic(Unknown
Source)
        at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:56)
        at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:194)
        at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:230)
        at WorkflowScript$_check_for_queue_closure1.doCall(WorkflowScript:56)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at 
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
        at 
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:294)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1024)
        at 
org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:42)
        at 
org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
        at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
        at 
org.codehaus.groovy.runtime.callsite.BooleanReturningMethodInvoker.invoke(BooleanReturningMethodInvoker.java:51)
        at 
org.codehaus.groovy.runtime.callsite.BooleanClosureWrapper.call(BooleanClosureWrapper.java:53)
        at 
org.codehaus.groovy.runtime.DefaultGroovyMethods.findAll(DefaultGroovyMethods.java:4281)
        at 
org.codehaus.groovy.runtime.DefaultGroovyMethods.findAll(DefaultGroovyMethods.java:4170)
        at org.codehaus.groovy.runtime.dgm$198.invoke(Unknown Source)
        at 
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce


any idea onthis ?



-- 
*Thanks. With kind regards,*
*HariPrasadChalla*

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAAseGVSwh0oAbMXdYTiQRQyXQMpaMHCk39_U9JKDfua%3DFNhyyg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to