Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-55616

hudson.remoting.ProxyException: groovy.lang.MissingMethodException: No signature of method: org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.evaluateStage()

XMLWordPrintable

      We have a declarative pipeline (groovy file) which is used by several projects to perform the deployment. As of uprading to Jenkins LTS 2.150.1 some of the jobs are failing, where others don't. Interestingly the pipeline itself runs on master.

      Here a simplified pipeline:

       

      #!groovy
      import groovy.transform.Field
      @Field PipelineUtil 
      //PipelineUtil=library(identifier: 'pipeline-helper@master').ch.swisscard.jenkins.pipeline.util.PipelineUtil
      PipelineUtil=library(identifier: 'pipeline-helper@master', retriever: modernSCM(
        [$class: 'GitSCMSource',
             remote: 'https://scm.sc.intra/scm/octopus/pipeline-helper.git',
             credentialsId: 'bitbucket.service.user'
        ])).ch.swisscard.jenkins.pipeline.util.PipelineUtillibrary identifier: 'octopus-pipeline-core@master', retriever: modernSCM(
        [$class: 'GitSCMSource',
             remote: 'https://scm.sc.intra/scm/octopus/octopus-pipeline-core.git',
             credentialsId: 'bitbucket.service.user'
        ])import hudson.AbortException
      import hudson.model.ChoiceParameterDefinition
      import org.apache.commons.lang3.exception.ExceptionUtils
      import org.jenkinsci.plugins.workflow.support.steps.build.RunWrapperpipeline {
          agent {
              label "master"
          }
          options {
              /*
              - daysToKeepStr: history is only kept up to this days.
              - numToKeepStr: only this number of build logs are kept.
              - artifactDaysToKeepStr: artifacts are only kept up to this days.
              - artifactNumToKeepStr: only this number of builds have their artifacts kept.
              */
              buildDiscarder(logRotator(daysToKeepStr: '365'))
              disableConcurrentBuilds()
              timestamps()
          }
          parameters {
              booleanParam(defaultValue: false, description: 'Runs the pipeline in dry run (aka dummy) w/o actually deploying or automatic workorder creation', name: 'dryRun')
          }    stages {
              stage('Deployment') {
                  steps {
                      script {
                          ....
                          this.deploy(currentStage, currentNode, currentJob, solution, tagPrefix, selectedTag, currentTag, recipient, sender, prdOperators, gitUrl, true)
                          if (currentBuild.result.equals('UNSTABLE')) {
                              return
                          }
                      }
                  }
              }
              stage('Cleanup') {
                  steps{
                      script {
                          dbInsertBuildEnd(currentBuild, "SUCCESS")
                          PipelineUtil.setBuildDescription(currentBuild, 'Deployment Ended')
                      }
                  }
              }
          }
      }
      

      The pipeline `deploy` is always successful, but - if we encounter the error - we get the following log output but never reach the stage "Cleanup"

      [Pipeline] // stage
      [Pipeline] }
      [Pipeline] // script
      [Pipeline] }
      [Pipeline] // stage
      [Pipeline] }
      [Pipeline] // timestamps
      [Pipeline] }
      [Pipeline] // withEnv
      [Pipeline] }
      [Pipeline] // node
      [Pipeline] End of Pipeline
      hudson.remoting.ProxyException: groovy.lang.MissingMethodException: No signature of method: org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.evaluateStage() is applicable for argument types: (org.jenkinsci.plugins.pipeline.modeldefinition.model.Root, org.jenkinsci.plugins.pipeline.modeldefinition.model.Agent, org.jenkinsci.plugins.pipeline.modeldefinition.model.Stage, null) values: [org.jenkinsci.plugins.pipeline.modeldefinition.model.Root(org.jenkinsci.plugins.pipeline.modeldefinition.model.Agent(null), org.jenkinsci.plugins.pipeline.modeldefinition.model.Stages([org.jenkinsci.plugins.pipeline.modeldefinition.model.Stage(Deployment, null, null, null, null, null, org.jenkinsci.plugins.pipeline.modeldefinition.model.StepsBlock(org.jenkinsci.plugins.workflow.cps.CpsClosure2@379705ac), null, null, null, false, null, null), org.jenkinsci.plugins.pipeline.modeldefinition.model.Stage(Cleanup, null, null, null, null, null, org.jenkinsci.plugins.pipeline.modeldefinition.model.StepsBlock(org.jenkinsci.plugins.workflow.cps.CpsClosure2@2f9438c9), null, null, null, false, null, null)]), null, null, null, org.jenkinsci.plugins.pipeline.modeldefinition.model.Options([], [:], [:]), null, org.jenkinsci.plugins.pipeline.modeldefinition.model.Parameters([hudson.model.BooleanParameterDefinition@5e540782]), null, b74bfec5-972b-4b40-b872-4cd559b3d11d), ...]
      Possible solutions: evaluateStage(org.jenkinsci.plugins.pipeline.modeldefinition.model.Root, org.jenkinsci.plugins.pipeline.modeldefinition.model.Agent, org.jenkinsci.plugins.pipeline.modeldefinition.model.Stage, java.lang.Throwable, org.jenkinsci.plugins.pipeline.modeldefinition.model.Stage, org.jenkinsci.plugins.pipeline.modeldefinition.model.SkippedStageReason)
      	at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:58)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
      	at com.cloudbees.groovy.cps.sandbox.DefaultInvoker.methodCall(DefaultInvoker.java:19)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:76)
      	at com.cloudbees.groovy.cps.CpsDefaultGroovyMethods.each(CpsDefaultGroovyMethods:2030)
      	at com.cloudbees.groovy.cps.CpsDefaultGroovyMethods.each(CpsDefaultGroovyMethods:2015)
      	at com.cloudbees.groovy.cps.CpsDefaultGroovyMethods.each(CpsDefaultGroovyMethods:2056)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:74)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.toolsBlock(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:455)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.toolsBlock(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:454)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:73)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.recursiveWrappers(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:530)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.recursiveWrappers(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:529)
      	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.recursiveWrappers(jar:file:/D:/data/jenkins_home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:545)
      	at ___cps.transform___(Native Method)
      	at com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:57)
      	at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:109)
      	at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:82)
      	at sun.reflect.GeneratedMethodAccessor809.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
      	at com.cloudbees.groovy.cps.impl.LocalVariableBlock$LocalVariable.get(LocalVariableBlock.java:39)
      	at com.cloudbees.groovy.cps.LValueBlock$GetAdapter.receive(LValueBlock.java:30)
      	at com.cloudbees.groovy.cps.impl.LocalVariableBlock.evalLValue(LocalVariableBlock.java:28)
      	at com.cloudbees.groovy.cps.LValueBlock$BlockImpl.eval(LValueBlock.java:55)
      	at com.cloudbees.groovy.cps.LValueBlock.eval(LValueBlock.java:16)
      	at com.cloudbees.groovy.cps.Next.step(Next.java:83)
      	at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:174)
      	at com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:163)
      	at org.codehaus.groovy.runtime.GroovyCategorySupport$ThreadCategoryInfo.use(GroovyCategorySupport.java:129)
      	at org.codehaus.groovy.runtime.GroovyCategorySupport.use(GroovyCategorySupport.java:268)
      	at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:163)
      	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$101(SandboxContinuable.java:34)
      	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.lambda$run0$0(SandboxContinuable.java:59)
      	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:108)
      	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0(SandboxContinuable.java:58)
      	at org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:182)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:332)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$200(CpsThreadGroup.java:83)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:244)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:232)
      	at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:64)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:131)
      	at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
      	at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:59)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at java.lang.Thread.run(Thread.java:748)
      Finished: FAILURE
      

       

       

            Unassigned Unassigned
            papanito papanito
            Votes:
            3 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated: