我尝试用Jenkins实现我的第一个Declarative Pipeline,以便能够在SCM下放置作业的参数定义。
我想转移一个具有扩展选择参与者的现有工作。不幸的是,我无法将其添加到我的脚本的参数{...}部分。
在插件页面上:https://wiki.jenkins-ci.org/display/JENKINS/Extended+Choice+Parameter+plugin我发现了一条评论说明应该可以通过以下方式进行评论:
import com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition
def type = "PT_JSON"
def groovyScript = null
def propertyValue = null
def projectName = null
def propertyFile = null
def groovyScriptFile = "/path_to/script.groovy"
...
def extendedChoice = new ExtendedChoiceParameterDefinition(name,
type,
propertyValue,
projectName,
propertyFile,
groovyScript,
.....
input message: 'Param1', parameters: [extendedChoice]
不幸的是,这对我不起作用。 "输入请求"给出了非指定的错误。虽然我可以接受输入消息"解决方案,它首先不是我想要的。我想将此参数添加到已经提到的参数部分。但我无法找到任何描述这个的地方。任何建议如何继续,或者也许是替代方法/插件?
答案 0 :(得分:3)
您应该转到http://jenkins-url.com/pipeline-syntax
下拉列表选择Sample step
上的properties
This project is parameterized
,然后您可以选择Add parameter
{{1}你可以为你的管道生成groovy。
答案 1 :(得分:2)
这是我使用和测试成功的单个参数,您可能需要将其转换为Json
com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition extch =new com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition( "NAME", "PT_SINGLE_SELECT", "VALUE, a, b", null, null, null, null, null,null, null,null,null, null, null, null,null, null, null,null, null, null, null, null, null, null,null,false,false,2,"DESC", "," )