我正在使用具有集成交付管道功能(https://jenkins.io/solutions/pipeline/)的Jenkins v2.1 来编排两个现有构建(构建和部署)。
在我的参数化构建中,我有3个用户参数设置,也需要在管道中选择该参数。
管道脚本如下:
node: { stage 'build' build job: 'build', parameters: [[$class: 'StringParameterValue', name: 'target', value: target], [$class: 'ListSubversionTagsParameterValue', name: 'release', tag: release], [$class: 'BooleanParameterValue', name: 'update_composer', value: update_composer]] stage 'deploy' build job: 'deploy', parameters: [[$class: 'StringParameterValue', name: 'target', value: target]] }
除以外,此方法均正常运行BooleanParameterValue。当我构建管道时,会引发以下错误:
BooleanParameterValue
java.lang.ClassCastException: hudson.model.BooleanParameterValue.value expects boolean but received class java.lang.String
如何解决此类型转换错误?甚至更好的是,有没有一种麻烦的方式可以将所有管道参数传递给下游作业。
假设
value: update_composer
是问题,尝试
value: Boolean.valueOf(update_composer)
有没有那么麻烦的方式可以将所有管道参数传递给下游作业
据我所知,至少没有使用Jenkins API调用并禁用Groovy沙箱的情况。