扩展选择参数插件很棒,我在通过UI https://wiki.jenkins- ci.org/display/JENKINS/Extended+Choice+Parameter+plugin配置的作业中使用它
但是,我正在努力使其在Jenkinsfile样式管道脚本中运行。由于Jenkins管道语法生成器创建了以下代码段,因此扩展选择参数插件似乎尚未与管道脚本完全兼容:
Jenkinsfile
parameters([<object of type com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition>])
如果我手动创建参数,则会得到与https://issues.jenkins- ci.org/browse/JENKINS-32188中提到的相同的行为
org.kohsuke.stapler.NoStaplerConstructorException: There's no @DataBoundConstructor on any constructor of class
有谁知道可以解决ExtendedChoiceParameterDefinition不使用问题的解决方法@DataBoundConstructor?
ExtendedChoiceParameterDefinition
@DataBoundConstructor
自2019年4月2日起,由于此提交,现在成为可能:https://github.com/jenkinsci/extended-choice-parameter- plugin/pull/25
您可以像这样使用它:
properties([ parameters([ extendedChoice( name: 'PROJECT', defaultValue: '', description: 'Sélectionnez le projet à construire.', type: 'PT_SINGLE_SELECT', groovyScript: valueKeysScript, descriptionGroovyScript: valueNamesScript ) ]) ])
如果您想知道每个可能的参数,则必须参考源代码。如果您想知道“ type”键的每个可能值,请查看这些PT_*常量。
PT_*