Как внедрить секретные параметры Dynami c из задания Jenkins в сценарий оболочки s sh - PullRequest
0 голосов
/ 24 марта 2020

спасибо, что потратили время на чтение моей проблемы.

У меня есть задание jenkins, которое выполняет сценарий оболочки на удаленной машине через s sh.

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

Вот команда, которую я даю сборке заданий jenkins:

ssh admin@10.24.66.254 'SVN_USER=foo SVN_PASSWORD=bar sh /app/script.sh'

-> Сценарий работает правильно, НО, он показывает мои учетные данные на conf задания jenkins и выводе консоли.

-> Теперь я думаю о параметризации задания, так что он будет динамически запрашивать имя пользователя / пароль, но я не знаю, как вставить их в мою командную строку, чтобы я мог передавать их как env-переменные на удаленной машине.

когда я делаю:

ssh admin@10.24.66.254 'SVN_USER=$LOGIN SVN_PASSWORD=$PWD sh /app/script.sh'

он не учитывает, что $ LOGIN и $ PWD являются входными переменными jenkins из-за простых кавычек, используемых для выполнения скрипта.

Надеюсь, я хорошо прояснил ситуацию Спасибо за чтение!

1 Ответ

1 голос
/ 24 марта 2020

Хорошей отправной точкой для этого будет Инъекция-Секреты-в-Дженкинс-Сборка-Задания

ИЛИ

Вы также можете использовать среду Дженкина Инжектор Плагин. Но обязательно просмотрите замечания по безопасности при использовании этого плагина.

...