Как прочитать параметры, отправленные вышестоящим заданием в последующем задании? - PullRequest
0 голосов
/ 28 декабря 2018

У меня есть задание восходящего конвейера, которое запускает задание нижестоящего конвейера, задание восходящего направления отправляет несколько параметров в задание нижестоящего.Как мне прочитать эти параметры в последующей работе?Оба задания не параметризованы.

Исходящее задание отправляет параметры следующим образом.

build job: 'downstream-job', 
        parameters: [[$class: 'StringParameterValue', name: 'Environment', value: "dev"]]

Этот ответ говорит, что использует переменную напрямую, но, похоже, это не работает.Когда я пытаюсь использовать переменную Environment в последующем задании, я получаю сообщение об ошибке:

groovy.lang.MissingPropertyException: No such property: Environment for class: groovy.lang.Binding

Ответы [ 2 ]

0 голосов
/ 28 декабря 2018

Я думаю, что проблема связана с нижестоящей работой, потому что она не параметризована.И если нижестоящее задание не параметризовано, оно просто игнорирует ваши параметры.С этой страницы:

Параметризованный плагин Trigger Параметры (например, при использовании файлов свойств в качестве источника) передаются только в том случае, если они определены в последующем задании.Это поведение, предназначенное для SECURITY-170, см. Jenkins Security Advisory 2016-05-11

Также из описания Параметризованный плагин триггера :

* ВЫ ДОЛЖНЫ ОПРЕДЕЛИТЬ ПАРАМЕТР В РАБОТАХ DOWNSTREAM С ПОМОЩЬЮ "Этот проект параметризован".Например, если job1 передает ABC = 123 в job2, то в job2 пометьте задание как «Этот проект параметризован» и «Добавить параметр» с именем «ABC».*

0 голосов
/ 28 декабря 2018

Из документации здесь должно быть params.Environment.

...