Issue
-
After upgrading my CloudBees CI controller, all Pipelines fail to use Shared Libraries with the following error:
java.lang.NoSuchFieldError: workspace at PluginClassLoader for workflow-cps-global-lib//org.jenkinsci.plugins.workflow.cps.global.GroovyShellDecoratorImpl$1.configureShell(GroovyShellDecoratorImpl.java:30) at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsGroovyShellFactory.build(CpsGroovyShellFactory.java:125) at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:649) at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:598) at PluginClassLoader for workflow-job//org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:343) at hudson.model.ResourceController.execute(ResourceController.java:101) at hudson.model.Executor.run(Executor.java:446) [withMaven] downstreamPipelineTriggerRunListener - Failure to introspect build steps: java.io.IOException: <my-job> #425 did not yet start [withMaven] downstreamPipelineTriggerRunListener - Failure to introspect build steps: java.io.IOException: <my-job> #425 did not yet start Finished: FAILURE
Context
The Pipeline: Deprecated Groovy Libraries plugin depends on the Git server plugin. The enhancements made to the Git Server plugin in #134, made older versions of the Deprecated Groovy Libraries plugin incompatible. #214 was merged to adapt the deprecated plugin to the new Git Server implementation.
Resolution
There are two solutions possible for this issue, the first being the recommended one:
-
Uninstall the Pipeline: Deprecated Groovy Libraries plugin, which is probably not in use, as it should only be used if you have historically pushed libraries to a Git server inside Jenkins. If you want to host Groovy Libraries, use Pipeline: Groovy Libraries plugin instead.
-
Upgrade the Pipeline: Deprecated Groovy Libraries plugin to the version containing the fix: 615.vb_b_0664a_b_19f3.