Как использовать параметры Jenkins в оболочке script

Я хочу использовать параметры, которые мы определяем в задании jenkins, в качестве параметра в качестве аргумента для оболочки script в том же задании

Я добавил параметризованную сборку и добавил параметр

high.version: 234

low.version: 220

Я хочу получить доступ к этой переменной в моей части BUILD в качестве аргумента для оболочки script

/bin/bash /hai/mycode/scripts/run_script.sh high.version

как получить доступ к этому параметру в том же задании

Ответ 2

Jenkins создаст переменные среды с именами параметров.

Здесь предостережение заключается в том, что Дженкинс также будет делать это для параметров, которые не представляют действительных имен переменных - с ними трудно получить доступ в bash. Это относится к вашему примеру, поскольку имена переменных bash не должны содержать символ ..

Самое простое решение состоит в том, что вы

  • переименуйте параметры, например. до high_version и low_version (которые являются действительными bash именами переменных)
  • затем используйте соответствующие имена переменных при вызове script

Пример:

/bin/bash /hai/mycode/scripts/run_script.sh "$high_version"

Ответ 3

Попробуйте это?

echo "function hello() {   " > gg.sh
echo "echo \$1">> gg.sh
echo "}" >> gg.sh
echo "hello \$1"  >> gg.sh
chmod 777 gg.sh

./gg.sh $hello_version

Будьте осторожны с именем переменной, точка не очень хорошо поддерживается, для подробностей вы можете это исправить. https://issues.jenkins-ci.org/browse/JENKINS-7180

Вr,

Тим