Проблемы передачи логического параметра в конвейерную дочернюю работу - PullRequest
0 голосов
/ 01 октября 2019

У меня есть это конвейерное задание, которое должно вызывать задание проверки следующим образом:

isHardReleaseAllowed= true                
def versionOk = build(job: "/validateMVNVersion", parameters: [[$class: 'StringParameterValue', name: 'version', value: params.version],
                [$class: 'BooleanParameterValue', name: 'isHardReleaseAllowed', value: isHardReleaseAllowed]], propagate: true)

Задание проверки определяется следующим образом:

string(name: 'version', description: 'The new version to set')
booleanParam(name: 'isReleaseTagAllowed',defaultValue: false , description: 'is hard release tag allowed?')

Это мои значения перед вызовоммоя работа (из консоли вывода):

echo ➡ проверка тега версии 1.12.14 на ветви ➡release / testRelease с isHardReleaseAllowed = true

Но когда я повторяю их в моей работе validateMVNVersion,

      echo "isReleaseTagAllowed class : \u27A1" + isReleaseTagAllowed.getClass().toString() + " value :" + isReleaseTagAllowed

      echo "env.isReleaseTagAllowed \u27A1" + env.isReleaseTagAllowed.getClass().toString() + " value :" + env.isReleaseTagAllowed
      echo "params.isReleaseTagAllowed \u27A1" + params.isReleaseTagAllowed.getClass().toString() + " value :" + params.isReleaseTagAllowed

      boolean isReleaseBranchAllowedBoolean = params.isReleaseTagAllowed == "true"
      echo "Boolean asboolean value is " + isReleaseBranchAllowedBoolean

Я получаю эти значения:

isReleaseTagAllowed class : ➡class java.lang.String value :false
[Pipeline] echo
env.isReleaseTagAllowed ➡class java.lang.String value :false
[Pipeline] echo
params.isReleaseTagAllowed ➡class java.lang.Boolean value :false
[Pipeline] echo
Boolean asboolean value is false

Все они ложные ... Что я не получаю?

1 Ответ

0 голосов
/ 01 октября 2019

Хороший способ получить значение - установить правильное имя переменной;)

...