У меня есть многоотраслевой конвейер в Дженкинсе.Я определил несколько флажков (более 20) для каждого параметра, который будет передаваться в сценарий, который затем запускает мое приложение и запускает соответствующий тестовый пример (это может быть не оптимальным решением, но эта структура была создана до того, как я начал работать в текущей компании, и яя не собираюсь его реорганизовывать):
booleanParam(name: 'cluster_number', defaultValue: false, description: '')
booleanParam(name: 'post_cluster_wu', defaultValue: false, description: '')
etc.
Мне нужно собрать выбор пользователя для каждого флажка (true-false).Я бы предпочел сделать это в цикле, например:
sh """
for (element in params) {
// testing:
echo "${element.key} ${element.value}"
}
"""
, но постоянно получаю сообщение об ошибке:
[Pipeline] End of Pipeline
groovy.lang.MissingPropertyException: No such property: element for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:264)
at org.kohsuke.groovy.sandbox.impl.Checker$6.call(Checker.java:288)
Также пытался поместить цикл вне сценария оболочки.Пока не повезло.
steps {
echo "username: ${params.OWNER_USERNAME}"
for (element in params) {
echo "${element.key} ${element.value}"
}
...
Интересно, кто-нибудь смог бы просмотреть циклы?Заранее спасибо!