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

GString kept unevaluated as long as StepDescriptor.newInstance (was: Pipeline build fails with serialization error when using string interpolation)

    Details

    • Similar Issues:

      Description

      I get the following error for my Pipeline jobs after upgrading from 2.56 to 2.57 (also updated a bunch of plugins, so I can't be certain that the core upgrade is the culprit). See also the comment https://issues.jenkins-ci.org/browse/JENKINS-42524?focusedCommentId=297258&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-297258, which seems to be the exact same issue I'm having.

      java.lang.RuntimeException: Failed to serialize org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage$Tag#actions for class org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage$Tag
      	at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:256)
      	at hudson.util.RobustReflectionConverter$2.visit(RobustReflectionConverter.java:224)
      	at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.visitSerializableFields(PureJavaReflectionProvider.java:138)
      	at hudson.util.RobustReflectionConverter.doMarshal(RobustReflectionConverter.java:209)
      	at hudson.util.RobustReflectionConverter.marshal(RobustReflectionConverter.java:150)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
      	at com.thoughtworks.xstream.core.TreeMarshaller.start(TreeMarshaller.java:82)
      	at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.marshal(AbstractTreeMarshallingStrategy.java:37)
      	at com.thoughtworks.xstream.XStream.marshal(XStream.java:1026)
      	at com.thoughtworks.xstream.XStream.marshal(XStream.java:1015)
      	at com.thoughtworks.xstream.XStream.toXML(XStream.java:988)
      	at hudson.XmlFile.write(XmlFile.java:171)
      	at org.jenkinsci.plugins.workflow.support.storage.SimpleXStreamFlowNodeStorage.saveActions(SimpleXStreamFlowNodeStorage.java:111)
      	at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.saveActions(CpsFlowExecution.java:918)
      	at org.jenkinsci.plugins.workflow.graph.FlowNode.save(FlowNode.java:380)
      	at org.jenkinsci.plugins.workflow.graph.FlowNode.persistSafe(FlowNode.java:386)
      	at org.jenkinsci.plugins.workflow.graph.FlowNode.access$100(FlowNode.java:61)
      	at org.jenkinsci.plugins.workflow.graph.FlowNode$1.add(FlowNode.java:346)
      	at org.jenkinsci.plugins.workflow.graph.FlowNode$1.add(FlowNode.java:336)
      	at java.util.AbstractList.add(AbstractList.java:108)
      	at hudson.model.Actionable.addAction(Actionable.java:152)
      	at org.jenkinsci.plugins.workflow.job.WorkflowRun$GraphL.onNewHead(WorkflowRun.java:897)
      	at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.notifyListeners(CpsFlowExecution.java:1110)
      	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$3.run(CpsThreadGroup.java:402)
      	at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$1.run(CpsVmExecutorService.java:35)
      	at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:112)
      	at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
      	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:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:748)
      Caused by: java.lang.RuntimeException: Failed to serialize org.jenkinsci.plugins.workflow.cps.actions.ArgumentsActionImpl#arguments for class org.jenkinsci.plugins.workflow.cps.actions.ArgumentsActionImpl
      	at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:256)
      	at hudson.util.RobustReflectionConverter$2.visit(RobustReflectionConverter.java:224)
      	at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.visitSerializableFields(PureJavaReflectionProvider.java:138)
      	at hudson.util.RobustReflectionConverter.doMarshal(RobustReflectionConverter.java:209)
      	at hudson.util.RobustReflectionConverter.marshal(RobustReflectionConverter.java:150)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:88)
      	at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeItem(AbstractCollectionConverter.java:64)
      	at com.thoughtworks.xstream.converters.collections.ArrayConverter.marshal(ArrayConverter.java:45)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)
      	at hudson.util.RobustReflectionConverter.marshallField(RobustReflectionConverter.java:265)
      	at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:252)
      	... 33 more
      Caused by: java.lang.UnsupportedOperationException: Refusing to marshal org.codehaus.groovy.runtime.GStringImpl for security reasons
      	at hudson.util.XStream2$BlacklistedTypesConverter.marshal(XStream2.java:452)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:88)
      	at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeItem(AbstractCollectionConverter.java:64)
      	at com.thoughtworks.xstream.converters.collections.CollectionConverter.marshal(CollectionConverter.java:74)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:88)
      	at com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter.writeItem(AbstractCollectionConverter.java:64)
      	at com.thoughtworks.xstream.converters.collections.MapConverter.marshal(MapConverter.java:79)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
      	at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
      	at com.thoughtworks.xstream.core.AbstractReferenceMarshaller$1.convertAnother(AbstractReferenceMarshaller.java:84)
      	at hudson.util.RobustReflectionConverter.marshallField(RobustReflectionConverter.java:265)
      	at hudson.util.RobustReflectionConverter$2.writeField(RobustReflectionConverter.java:252)
      

        Attachments

          Issue Links

            Activity

            estyrke Emil Styrke created issue -
            Hide
            estyrke Emil Styrke added a comment -

            Replacing all string interpolations ("foo ${variable} bar") with concatenations ("foo" + variable + "bar") in the Jenkinsfile seems to work around the problem.

            Show
            estyrke Emil Styrke added a comment - Replacing all string interpolations ("foo ${variable} bar") with concatenations ("foo" + variable + "bar") in the Jenkinsfile seems to work around the problem.
            estyrke Emil Styrke made changes -
            Field Original Value New Value
            Summary Pipeline build fails with serialization error Pipeline build fails with serialization error when using string interpolation
            estyrke Emil Styrke made changes -
            Component/s core [ 15593 ]
            Hide
            panajev Goffredo Marocchi added a comment -

            Emil Styrke does this affect non Jenkinsfile based jobs like legacy pipeline jobs or legacy jobs in general?

            Show
            panajev Goffredo Marocchi added a comment - Emil Styrke does this affect non Jenkinsfile based jobs like legacy pipeline jobs or legacy jobs in general?
            Hide
            estyrke Emil Styrke added a comment -

            I have not tested, but I'm not sure how to test that. The error occurs because of script security issues (using Groovy string interpolation) with the Jenkinsfile, as far as I can see.

            None of my legacy jobs use Groovy scripts.

            Show
            estyrke Emil Styrke added a comment - I have not tested, but I'm not sure how to test that. The error occurs because of script security issues (using Groovy string interpolation) with the Jenkinsfile, as far as I can see. None of my legacy jobs use Groovy scripts.
            Hide
            seanscoggins Sean Scoggins added a comment -

            I was able to work around this by explicitly converting from gstring to string, like this

            "a string with a ${variable}".toString()

            in my pipeline script.

            Show
            seanscoggins Sean Scoggins added a comment - I was able to work around this by explicitly converting from gstring to string, like this "a string with a ${variable}".toString() in my pipeline script.
            jglick Jesse Glick made changes -
            Link This issue relates to JENKINS-42524 [ JENKINS-42524 ]
            Hide
            jglick Jesse Glick added a comment -

            Most likely due to a plugin update rather than core update. Anyone know how to reproduce from scratch?

            Show
            jglick Jesse Glick added a comment - Most likely due to a plugin update rather than core update. Anyone know how to reproduce from scratch?
            jglick Jesse Glick made changes -
            Component/s core [ 15593 ]
            jglick Jesse Glick made changes -
            Link This issue blocks JENKINS-37324 [ JENKINS-37324 ]
            Hide
            jglick Jesse Glick added a comment -

            Ah, ArgumentsActionImpl. You must have enabled the experimental update center, since this comes from a PR which has not even been merged yet!

            Show
            jglick Jesse Glick added a comment - Ah, ArgumentsActionImpl . You must have enabled the experimental update center, since this comes from a PR which has not even been merged yet!
            Hide
            jglick Jesse Glick added a comment -

            Sam Van Oort PTAL. Best to avoid pushing bits even to the experimental UC I guess.

            Show
            jglick Jesse Glick added a comment - Sam Van Oort PTAL. Best to avoid pushing bits even to the experimental UC I guess.
            jglick Jesse Glick made changes -
            Assignee Sam Van Oort [ svanoort ]
            svanoort Sam Van Oort made changes -
            Priority Critical [ 2 ] Minor [ 4 ]
            Hide
            svanoort Sam Van Oort added a comment - - edited

            Jesse Glick Nonserializable GString, yeah, that's a problem.  Shouldn't all the arguments to a Step be inherently serializable though, to enable saving the groovy program?

            I'm downgrading priority because this is an unstable beta build still.

            IMO this is exactly why we should be pushing bits to the experimental update center – if a user finds a bug like this, we get to fix it before it goes into full release. Of course, had it gone into full release, I have a runtime-settable property that would disable saving arguments.  I planned ahead and had safety measures already in place for this sort of issue. 

            I will address this issue as part of code review fixes for the new ArgumentsActionImpl.

            Emil Styrke Please downgrade your Pipeline Groovy plugin & Pipeline Stage View Plugin versions to the latest stable release – NON-alpha/NON-beta.  The issue will disappear.  There's also a runtime setting you can use to disable the cause of this, but better to just go to stable versions.

            Show
            svanoort Sam Van Oort added a comment - - edited Jesse Glick Nonserializable GString, yeah, that's a problem.  Shouldn't all the arguments to a Step be inherently serializable though, to enable saving the groovy program? I'm downgrading priority because this is an unstable beta build still. IMO this is exactly why we should be pushing bits to the experimental update center – if a user finds a bug like this, we get to fix it before it goes into full release. Of course, had it gone into full release, I have a runtime-settable property that would disable saving arguments.  I planned ahead and had safety measures already in place for this sort of issue.  I will address this issue as part of code review fixes for the new ArgumentsActionImpl. Emil Styrke Please downgrade your Pipeline Groovy plugin & Pipeline Stage View Plugin versions to the latest stable release – NON-alpha/NON-beta.  The issue will disappear.  There's also a runtime setting you can use to disable the cause of this, but better to just go to stable versions.
            Hide
            strml Samuel Reed added a comment - - edited

            I had the same issue (in JENKINS-42524), because I was on the experimental channel as well due to wanting to try out Blue Ocean a few moons ago. Fixed the same way as above, by removing interpolation.

            Show
            strml Samuel Reed added a comment - - edited I had the same issue (in  JENKINS-42524 ), because I was on the experimental channel as well due to wanting to try out Blue Ocean a few moons ago. Fixed the same way as above, by removing interpolation.
            Hide
            jglick Jesse Glick added a comment -

            Shouldn't all the arguments to a Step be inherently serializable though, to enable saving the groovy program?

            They are serializable by JBoss Marshalling. This is the first time someone is trying to serialize them via XStream, for which we call ClassFilter.

            Show
            jglick Jesse Glick added a comment - Shouldn't all the arguments to a Step be inherently serializable though, to enable saving the groovy program? They are serializable by JBoss Marshalling. This is the first time someone is trying to serialize them via XStream, for which we call ClassFilter .
            Hide
            jglick Jesse Glick added a comment -

            Samuel Reed Blue Ocean is in regular release. You should disable the experimental UC unless you know what you are doing.

            Show
            jglick Jesse Glick added a comment - Samuel Reed Blue Ocean is in regular release. You should disable the experimental UC unless you know what you are doing.
            Hide
            strml Samuel Reed added a comment -

            Yes, I've done so now.

            Show
            strml Samuel Reed added a comment - Yes, I've done so now.
            Hide
            estyrke Emil Styrke added a comment -

            Indeed, after downgrading Pipeline: Groovy and Pipeline: API from the stepstorage4-beta versions, my problems are gone. Thanks for the pointer!

            Show
            estyrke Emil Styrke added a comment - Indeed, after downgrading Pipeline: Groovy and Pipeline: API from the stepstorage4-beta versions, my problems are gone. Thanks for the pointer!
            Hide
            estyrke Emil Styrke added a comment -

            Feel free to close this issue. Sorry for the noise!

            Show
            estyrke Emil Styrke added a comment - Feel free to close this issue. Sorry for the noise!
            jglick Jesse Glick made changes -
            Component/s workflow-cps-plugin [ 21713 ]
            Component/s pipeline [ 21692 ]
            jglick Jesse Glick made changes -
            Summary Pipeline build fails with serialization error when using string interpolation GString kept unevaluated as long as StepDescriptor.newInstance (was: Pipeline build fails with serialization error when using string interpolation)
            jglick Jesse Glick made changes -
            Assignee Sam Van Oort [ svanoort ] Jesse Glick [ jglick ]
            jglick Jesse Glick made changes -
            Remote Link This issue links to "workflow-cps PR 123 (Web Link)" [ 16502 ]
            jglick Jesse Glick made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            jglick Jesse Glick made changes -
            Status In Progress [ 3 ] In Review [ 10005 ]
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            src/main/java/org/jenkinsci/plugins/workflow/cps/DSL.java
            src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java
            http://jenkins-ci.org/commit/workflow-cps-plugin/549ae9bdcc83289c0af71db5cc9ed67878b6a6eb
            Log:
            JENKINS-43934 Flatten GString’s found in step arguments, even when present in nested collections.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/org/jenkinsci/plugins/workflow/cps/DSL.java src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java http://jenkins-ci.org/commit/workflow-cps-plugin/549ae9bdcc83289c0af71db5cc9ed67878b6a6eb Log: JENKINS-43934 Flatten GString’s found in step arguments, even when present in nested collections.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            src/main/java/org/jenkinsci/plugins/workflow/cps/DSL.java
            src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java
            http://jenkins-ci.org/commit/workflow-cps-plugin/ef0d963f6d48101a87d69a34644495e075bffd8d
            Log:
            Merge pull request #123 from jglick/flattenGString

            JENKINS-43934 Flatten GString’s found in step arguments, even when present in nested collections

            Compare: https://github.com/jenkinsci/workflow-cps-plugin/compare/66f27532e341...ef0d963f6d48

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/org/jenkinsci/plugins/workflow/cps/DSL.java src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java http://jenkins-ci.org/commit/workflow-cps-plugin/ef0d963f6d48101a87d69a34644495e075bffd8d Log: Merge pull request #123 from jglick/flattenGString JENKINS-43934 Flatten GString’s found in step arguments, even when present in nested collections Compare: https://github.com/jenkinsci/workflow-cps-plugin/compare/66f27532e341...ef0d963f6d48
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java
            src/test/java/org/jenkinsci/plugins/workflow/cps/DSLTest.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/California.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListWithSymbolStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicWithSymbolStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/Nevada.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/NewYork.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/State.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/StateMetaStep.java
            http://jenkins-ci.org/commit/workflow-cps-plugin/c759f36ecdb31987547111e83e77d2f2b040c701
            Log:
            JENKINS-43934 Verifying that flattening logic also works for symbols—we do not need to explicitly traverse UninstantiatedDescribable.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java src/test/java/org/jenkinsci/plugins/workflow/cps/DSLTest.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/California.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListWithSymbolStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicWithSymbolStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/Nevada.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/NewYork.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/State.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/StateMetaStep.java http://jenkins-ci.org/commit/workflow-cps-plugin/c759f36ecdb31987547111e83e77d2f2b040c701 Log: JENKINS-43934 Verifying that flattening logic also works for symbols—we do not need to explicitly traverse UninstantiatedDescribable.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java
            src/test/java/org/jenkinsci/plugins/workflow/cps/DSLTest.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/California.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListWithSymbolStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicWithSymbolStep.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/Nevada.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/NewYork.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/State.java
            src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/StateMetaStep.java
            http://jenkins-ci.org/commit/workflow-cps-plugin/7101f717d0027528e3ff70b4c157258e17423f9e
            Log:
            Merge pull request #131 from jglick/extra-test-JENKINS-43934

            Extra test for JENKINS-43934

            Compare: https://github.com/jenkinsci/workflow-cps-plugin/compare/5f871a45f478...7101f717d002

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/test/java/org/jenkinsci/plugins/workflow/DSLTest.java src/test/java/org/jenkinsci/plugins/workflow/cps/DSLTest.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/California.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicListWithSymbolStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/MonomorphicWithSymbolStep.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/Nevada.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/NewYork.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/State.java src/test/java/org/jenkinsci/plugins/workflow/testMetaStep/StateMetaStep.java http://jenkins-ci.org/commit/workflow-cps-plugin/7101f717d0027528e3ff70b4c157258e17423f9e Log: Merge pull request #131 from jglick/extra-test- JENKINS-43934 Extra test for JENKINS-43934 Compare: https://github.com/jenkinsci/workflow-cps-plugin/compare/5f871a45f478...7101f717d002
            Hide
            svanoort Sam Van Oort added a comment -

            Released fix with workflow-cps as of either 2.30 or 2.29

            Show
            svanoort Sam Van Oort added a comment - Released fix with workflow-cps as of either 2.30 or 2.29
            svanoort Sam Van Oort made changes -
            Status In Review [ 10005 ] Closed [ 6 ]
            Resolution Fixed [ 1 ]
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-44873 [ JENKINS-44873 ]
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-44873 [ JENKINS-44873 ]
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-27916 [ JENKINS-27916 ]

              People

              • Assignee:
                jglick Jesse Glick
                Reporter:
                estyrke Emil Styrke
              • Votes:
                2 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: