Jenkins переменные задачи на bash

Переменные задачи можно делать только на groovy. Этот способ дает возможность задавать переменные на bash.

В Inject environment запускается groovy-скрипт, который запускает shell-скрипт на сервере с параметрами.
В shell-скрипте делается два запроса curl. Один заливает файл, второй шарит его и возвращает ссылку назад в groovy в виде переменной задачи, которую потом можно будет использовать.
Таким образом мы получаем возможность на старте создавать переменные не записывая их в файл на bash. Groovy в этом случает выступает прослойкой для запуска скрипта shell и получения переменных. Из минусов - shell-скрипты нужно будет хранить где-то. Больше минусов не увидел, по безопасности секьюрные переменные так и остаются в логе закрытыми.

var1 - передаваемый параметр

VAR - получаемая перемнная, которую можно будет использовать дальше

t=(['bash', "/tmp/dropbox.sh", "$var1"].execute().text)

def map = ["VAR": t]

Комментарии

Популярные сообщения из этого блога

Accel-ppp команды

mikbill расшифровка завершений сессий

Zabbix agent установка и настройка