如何获取BooleanParameterValue的值?

时间:2017-04-24 13:59:23

标签: jenkins jenkins-pipeline

我正在尝试获取我的一个布尔参数的值来构建作业。 例如:

build job: 'test', parameters:  [[$class: 'BooleanParameterValue', name: 'Param1', value: Param1]]

Param1是一个布尔参数。 BooleanParameterValue类仅对参数:value。

采用布尔值
public BooleanParameterValue(String name,
                         boolean value,
                         String description)

我尝试过.getValue()函数,但它没有用。 我知道,如果我直接输入真或假,它可以工作,但它需要是一个变量。 THX。

2 个答案:

答案 0 :(得分:4)

params是一个保存作业构建参数的全局对象。它还保留了它们的类型(在大多数情况下为StringBoolean)。

可以通过直接引用布尔参数来“省略”params,就像你所做的那样。但该变量实际上是String的类型。假设在作业配置中设置了'aBooleanParameter'布尔参数:

echo aBooleanParameter.getClass().toString()        // class java.lang.String
echo params.aBooleanParameter.getClass().toString() // class java.lang.Boolean

所以,更正统的给出参数的方法是你的构建将是

build job: 'test', parameters:  [[$class: 'BooleanParameterValue', name: 'Param1', value: params.Param1]]

答案 1 :(得分:0)

它适用于toBoolean()函数!

build job: 'test', parameters:  [[$class: 'BooleanParameterValue', name: 'Param1', value: Param1.toBoolean()]]