[JIRA] (JENKINS-39742) Active Choice Plugin in Pipelines throw NotSerializableException

13 views
Skip to first unread message

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:22:02 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton created an issue
 
Jenkins / Bug JENKINS-39742
Active Choice Plugin in Pipelines throw NotSerializableException
Issue Type: Bug Bug
Assignee: Unassigned
Components: active-choices-plugin, groovy-plugin, pipeline, pipeline-input-step-plugin
Created: 2016/Nov/15 12:21 PM
Environment: Jenkins 2.19.1
Pipeline 2.4
Pipeline: Groovy 2.23
Active Choices Plug-in: 1.5.1
Labels: active-choices pipeline
Priority: Major Major
Reporter: jsclinton

Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

Stacktrace

{{java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:967)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:569)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.BlockMarshaller.doWriteObject(BlockMarshaller.java:65)
at org.jboss.marshalling.river.BlockMarshaller.writeObject(BlockMarshaller.java:56)
at org.jboss.marshalling.MarshallerObjectOutputStream.writeObjectOverride(MarshallerObjectOutputStream.java:50)
at org.jboss.marshalling.river.RiverObjectOutputStream.writeObjectOverride(RiverObjectOutputStream.java:179)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:344)
at java.util.TreeMap.writeObject(TreeMap.java:2434)
at sun.reflect.GeneratedMethodAccessor357.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at org.jboss.marshalling.reflect.SerializableClass.callWriteObject(SerializableClass.java:271)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:976)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.AbstractObjectOutput.writeObject(AbstractObjectOutput.java:58)
at org.jboss.marshalling.AbstractMarshaller.writeObject(AbstractMarshaller.java:111)
at org.jenkinsci.plugins.workflow.support.pickles.serialization.RiverWriter.writeObject(RiverWriter.java:132)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.saveProgram(CpsThreadGroup.java:433)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.saveProgram(CpsThreadGroup.java:412)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:357)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$100(CpsThreadGroup.java:78)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:236)
at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:224)
at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:63)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
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:745)
Caused by: an exception which occurred:
in field secureFallbackScript
in field script
in field parameters
in field input
in field step
in field threads
in object org.jenkinsci.plugins.workflow.cps.CpsThreadGroup@7145f3ac}}

Pipeline Code

{{node {
def inputValues
def yesNo = readFile(env.JENKINS_ROOT + '/dropdowns/yesno.txt')

stage('Build Properties')

{ inputValues = input( id: 'userInput', message: 'AutoDeploy', ok: 'GO GO GO', parameters: [ [ $class: 'ChoiceParameter', choiceType: 'PT_RADIO', description: 'Auto-deploy after upload', filterable: false, name: 'autodeploy', randomName: 'choice-para-9552882322810329', script: [$class: 'GroovyScript', fallbackScript: [classpath: [], sandbox: true, script: ''], script: [classpath: [], sandbox: true, script: yesNo]] ] ] ) }

}
}}

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
Atlassian logo

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:23:03 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Change By: jsclinton
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h2. Stacktrace
{{java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript
}}
h3. Pipeline Code


{{node {
    def inputValues
    def yesNo = readFile(env.JENKINS_ROOT + '/dropdowns/yesno.txt')
    
    stage('Build Properties') {
        inputValues = input(
            id: 'userInput', message: 'AutoDeploy', ok: 'GO GO GO',
            parameters: [
                [
                    $class: 'ChoiceParameter', choiceType: 'PT_RADIO', description: 'Auto-deploy after upload', filterable: false, name: 'autodeploy', randomName: 'choice-para-9552882322810329', script: [$class: 'GroovyScript', fallbackScript: [classpath: [], sandbox: true, script: ''], script: [classpath: [], sandbox: true, script: yesNo]]
                ]
            ]
        )
    }
}
}}

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:23:03 AM11/15/16
to jenkinsc...@googlegroups.com

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:25:04 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h2. Stacktrace
{{java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript
}}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860) }}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988 {{ )
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854
{{ )
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032
{{ )
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(
RiverMarshaller RiverMarshalle{{{{{{r .java:988 {{ )

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:25:04 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h2. Stacktrace
{{java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript}}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)
}}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
}}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988
{{ ) }}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854 {{ ) }}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032 {{ ) }}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject( RiverMarshalle{{{{{{r RiverMarshaller .java:988 {{ ) }}

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:25:08 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h2. Stacktrace
{{java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript
}}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)}}
{{ at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)}}

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:26:04 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h3. Stacktrace

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:26:05 AM11/15/16
to jenkinsc...@googlegroups.com

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:26:05 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h2 h3 . Stacktrace

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:27:01 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h3. Stacktrace
bq. java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:967)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:569)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
bq.   at org.jboss.marshalling.river.BlockMarshaller.doWriteObject(BlockMarshaller.java:65)
bq.   at org.jboss.marshalling.river.BlockMarshaller.writeObject(BlockMarshaller.java:56)
bq.   at org.jboss.marshalling.MarshallerObjectOutputStream.writeObjectOverride(MarshallerObjectOutputStream.java:50)
bq.   at org.jboss.marshalling.river.RiverObjectOutputStream.writeObjectOverride(RiverObjectOutputStream.java:179)
bq.   at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:344)
bq.   at java.util.TreeMap.writeObject(TreeMap.java:2434)
bq.   at sun.reflect.GeneratedMethodAccessor357.invoke(Unknown Source)
bq.   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
bq.   at java.lang.reflect.Method.invoke(Method.java:483)
bq.   at org.jboss.marshalling.reflect.SerializableClass.callWriteObject(SerializableClass.java:271)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:976)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
bq.   at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
bq.   at org.jboss.marshalling.AbstractObjectOutput.writeObject(AbstractObjectOutput.java:58)
bq.   at org.jboss.marshalling.AbstractMarshaller.writeObject(AbstractMarshaller.java:111)
bq.   at org.jenkinsci.plugins.workflow.support.pickles.serialization.RiverWriter.writeObject(RiverWriter.java:132)
bq.   at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.saveProgram(CpsThreadGroup.java:433)
bq.   at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.saveProgram(CpsThreadGroup.java:412)
bq.   at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:357)
bq.   at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$100(CpsThreadGroup.java:78)
bq.   at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:236)
bq.   at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:224)
bq.   at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:63)
bq.   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
bq.   at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:112)
bq.   at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
bq.   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
bq.   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
bq.   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
bq.   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
bq.   at java.lang.Thread.run(Thread.java:745)
bq. Caused by: an exception which occurred:
bq.   in field secureFallbackScript
bq.   in field script
bq.   in field parameters
bq.   in field input
bq.   in field step
bq.   in field threads
bq.   in object org.jenkinsci.plugins.workflow.cps.CpsThreadGroup@7145f3ac


h3. Pipeline Code

node {
    def inputValues
    def yesNo = readFile(env.JENKINS_ROOT + '/dropdowns/yesno.txt')
    
    stage('Build Properties') {
        inputValues = input(
            id: 'userInput', message: 'AutoDeploy', ok: 'GO GO GO',
            parameters: [
                [
                    $class: 'ChoiceParameter', choiceType: 'PT_RADIO', description: 'Auto-deploy after upload', filterable: false, name: 'autodeploy', randomName: 'choice-para-9552882322810329', script: [$class: 'GroovyScript', fallbackScript: [classpath: [], sandbox: true, script: ''], script: [classpath: [], sandbox: true, script: yesNo]]
                ]
            ]
        )
    }
}
}}

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:27:01 AM11/15/16
to jenkinsc...@googlegroups.com

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:27:02 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h3. Stacktrace
{quote} java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript

at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032) {quote}
Caused by: an exception which occurred:
in field secureFallbackScript
in field script
in field parameters
in field input
in field step
in field threads
in object org.jenkinsci.plugins.workflow.cps.CpsThreadGroup@7145f3ac

h3. Pipeline Code

node {
    def inputValues
    def yesNo = readFile(env.JENKINS_ROOT + '/dropdowns/yesno.txt')
    
    stage('Build Properties') {
        inputValues = input(
            id: 'userInput', message: 'AutoDeploy', ok: 'GO GO GO',
            parameters: [
                [
                    $class: 'ChoiceParameter', choiceType: 'PT_RADIO', description: 'Auto-deploy after upload', filterable: false, name: 'autodeploy', randomName: 'choice-para-9552882322810329', script: [$class: 'GroovyScript', fallbackScript: [classpath: [], sandbox: true, script: ''], script: [classpath: [], sandbox: true, script: yesNo]]
                ]
            ]
        )
    }
}
}}

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:28:01 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h3. Stacktrace
{{ java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)
}}
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)

jaime.clinton3@gmail.com (JIRA)

unread,
Nov 15, 2016, 7:28:01 AM11/15/16
to jenkinsc...@googlegroups.com
jsclinton updated an issue
Since upgrading to Pipeline: Active Choices Plug-in: 1.5.1 the Groovy script is no longer serializable and therefore throws NotSerializableException when input is requested.

h3. Stacktrace
{ quote} { java.io.NotSerializableException: org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:860)
}}
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032)
at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988)
at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854)
at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032) {quote}
}}

brunodepaulak@yahoo.com.br (JIRA)

unread,
Nov 26, 2016, 7:00:02 PM11/26/16
to jenkinsc...@googlegroups.com
Bruno P. Kinoshita resolved as Won't Fix
 

Sorry, there is no support to Pipeline/Workflow in Active Choices at the moment. The plug-in relies on the Jenkins UI, more specifically on the browser DOM. Without that (IOW within a pipeline context) its behavior is unexpected.

In case you can confirm this issue happens regardless of the pipeline plug-in, i.e. for a normal freestyle job, going to the build with parameter screen, feel free to re-open it.

Thanks

Change By: Bruno P. Kinoshita
Status: Open Resolved
Assignee: Bruno P. Kinoshita
Resolution: Won't Fix

frederic.chuong@gmail.com (JIRA)

unread,
Mar 3, 2017, 2:23:01 AM3/3/17
to jenkinsc...@googlegroups.com
Frédéric Chuong commented on Bug JENKINS-39742
 
Re: Active Choice Plugin in Pipelines throw NotSerializableException

The problem seems more related to compliance to hudson.model.ParameterDefinition contract which implements Serializable instead of being specific to Pipelines:

active-choice-plugin parameter implementations contain a non-transient org.biouno.unochoice.model.GroovyScript field (when using Groovy script) which itself contain a non-transient non-Serialiable org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript field (as of script-security 1.27), breaking the whole "Serializable chain". A Pipeline script here merely assumes the parameter is compliant to the core "parameter" contract.

Would it be a valid reason to re-open this issue?

In case there are DOM issues for the UI part, I guess another JIRA issue should be created.

frederic.chuong@gmail.com (JIRA)

unread,
Mar 3, 2017, 2:27:01 AM3/3/17
to jenkinsc...@googlegroups.com
Frédéric Chuong edited a comment on Bug JENKINS-39742
The problem seems more related to compliance to {{hudson.model.ParameterDefinition}} contract which implements {{Serializable}} instead of being specific to Pipelines:

_active-choice-plugin_ parameter implementations contain a non-transient {{org.biouno.unochoice.model.GroovyScript}} field (when using Groovy script) which itself contain a non-transient *non-Serialiable* {{org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript}} field (as of {{script-security}} 1.27), breaking the whole "Serializable chain". A Pipeline script here merely assumes the parameter is compliant to the core "parameter" contract.

Would it be a valid reason to re-open this issue
(and maybe rename it to _Active Choice Plugin should honor ParameterDefinition serializability_) ?


In case there are DOM issues for the UI part, I guess another JIRA issue should be created.

frederic.chuong@gmail.com (JIRA)

unread,
Mar 3, 2017, 3:28:03 AM3/3/17
to jenkinsc...@googlegroups.com

frederic.chuong@gmail.com (JIRA)

unread,
Mar 3, 2017, 4:44:05 AM3/3/17
to jenkinsc...@googlegroups.com
Frédéric Chuong edited a comment on Bug JENKINS-39742
The problem seems more related to compliance to {{hudson.model.ParameterDefinition}} contract which implements {{Serializable}} instead of being specific to Pipelines:

_active-choice-plugin_ parameter implementations contain a non-transient {{org.biouno.unochoice.model.GroovyScript}} field (when using Groovy script) which itself contain a non-transient *non- Serialiable Serializable * {{org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript}} field (as of {{script-security}} 1.27), breaking the whole "Serializable chain". A Pipeline script here merely assumes the parameter is compliant to the core "parameter" contract.


Would it be a valid reason to re-open this issue (and maybe rename it to _Active Choice Plugin should honor ParameterDefinition serializability_)?

In case there are DOM issues for the UI part, I guess another JIRA issue should be created.

brunodepaulak@yahoo.com.br (JIRA)

unread,
Mar 3, 2017, 6:29:02 AM3/3/17
to jenkinsc...@googlegroups.com

Hi Frédéric Chuong,

I marked the issue as resolved as I thought it was related strictly to the pipelines support.

You have a good argument I'm keen to spend some time investigating how we could fix it (we just need - probably - look at some other plug-in that does that) and then can discuss pipeline support in a separate issue as you suggested.

Feel free to move the issue to the status you find more appropriate. We had a BioUno meeting recently, and I am going to triage issues in the next days to prepare a new release. This one looks like a low hanging fruit to include.

Cheers
Bruno

frederic.chuong@gmail.com (JIRA)

unread,
Mar 3, 2017, 10:59:04 AM3/3/17
to jenkinsc...@googlegroups.com
Frédéric Chuong reopened an issue
 

Thanks Bruno P. Kinoshita, I'll update the issue details accordingly.
As a first guess, the simplest approach (from the Active Choice Plugin point of view) would be checking with script-security maintainers to see whether SecureGroovyScript could be enhanced to implement Serializable. If that is possible, then it would be a matter of upgrading the script-security dependency to fix this issue.

Change By: Frédéric Chuong
Resolution: Won't Fix
Status: Resolved Reopened
Reply all
Reply to author
Forward
0 new messages