詹金斯选择参数传递给管道作业 [英] Jenkins Choice parameter Passing to a pipeline Job

查看:132
本文介绍了詹金斯选择参数传递给管道作业的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当前,我有一个具有不同参数的管道作业,其中此参数之一是Choice参数.这是该作业参数的config.xml输出:

Currently I have a pipeline job which has different paramters where one of this parameters is a Choice parameter. Here is the config.xml output of that job parameter:

<hudson.model.ChoiceParameterDefinition>
    <choices class="java.util.Arrays$ArrayList">
        <a class="string-array">
            <string>f1</string>
            <string>f2</string>
            <string>f3</string>
            <string>f4</string>
        </a>
    </choices>
    <name>WHERE</name>
    <description>Something</description>
</hudson.model.ChoiceParameterDefinition>

现在,我可以通过传递字符串参数从管道中调用此作业:

Now I can call this job from a pipeline via by passing a string parameter:

build job: "NameOfTheJob"", parameters:
  [
    [$class: 'StringParameterValue', name: 'BRANCH', value: "${BRANCH}"],
  ]

但是我无法为选择参数定义参数:

But I couldn't get a way to define the parameters for a choice parameter:

我尝试了以下操作:

build job: "NameOfTheJob"", parameters:
  [
    [$class: 'StringParameterValue', name: 'BRANCH', value: "${BRANCH}"],
    [$class: 'ChoiceParameterValue', name: 'WHERE', value: 'F3'],
  ]

但这失败并出现以下错误:

But this failed with the following error:

java.lang.UnsupportedOperationException: no known implementation of class hudson.model.ParameterValue is named ChoiceParameterValue

所以问题是:如何在调用其他管道作业时定义选择参数:

So the question is: How to define a choice parameters in calling an other pipeline job:

build job: "NameOfTheJob"", parameters:
  [
    [$class: 'StringParameterValue', name: 'BRANCH', value: "${BRANCH}"],
    [$class: '??????', ????],
  ]

有人举这样的例子吗?

推荐答案

我看到了一个使用以下语法的有效示例:

I have seen a working example that uses the below syntax:

build job:'NameOfTheJob', parameters: [
      string(name: 'FirstOption', value: "test"),
      string(name: 'AnotherOption', value: "test12")
]

基本上,不要以特殊方式对待选择参数,只需将它们视为常规字符串参数即可.

Basically, don't treat the choice parameters in a special manner, just treat them as regular string parameters.

这篇关于詹金斯选择参数传递给管道作业的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆