Есть ли способ установить ярлык агента динамически, а не как обычную строку?
Задача состоит из двух этапов:
- Первый этап - всегда работает на "хозяине". В конце этого этапа я узнаю, на каком агенте должен пройти второй этап.
- Второй этап - должен действовать на агента, принятого на первом этапе.
Моя (не работающая) попытка выглядит так:
pipeline {
agent { label 'master' }
stages {
stage('Stage1') {
steps {
script {
env.node_name = "my_node_label"
}
echo "node_name: ${env.node_name}"
}
}
stage('Stage2') {
agent { label "${env.node_name}" }
steps {
echo "node_name: ${env.node_name}"
}
}
}
}
Первое эхо работает отлично, и печатается "my_node_label". Второй этап не запускается на агенте с надписью "my_node_label", а консольная печать:
Нет узлов с меткой 'null
Может быть, это может помочь - если я просто поставлю "$ {env}" в поле метки, я вижу, что это класс java, поскольку он печатает:
Нет узлов с меткой'[email protected]