Переменные среды не найдены при запуске скрипта из Jenkins - PullRequest
0 голосов
/ 26 апреля 2019

У меня есть скрипт с именем test.sh на удаленном сервере.Он печатает переменную среды, которая была установлена ​​в .profile, и выглядит следующим образом:

#!/bin/ksh
echo "JAVA_HOME: $JAVA_HOME"

Когда я запускаю скрипт вручную, я получаю тот же результат, что и с командой echo.

my_user@remote_server$ echo "JAVA_HOME: $JAVA_HOME"
JAVA_HOME: /path/to/java_jdk
my_user@remote_server$ ./test/test.sh
JAVA_HOME: /path/to/java_jdk

Команды, которые я настроил в Jenkins SSH plugin, точно такие же, как и те, которые я выполнял вручную:

echo "JAVA_HOME: "$JAVA_HOME
./test/test.sh

Но когда я запускаю его, я получаю следующий вывод в Jenkins:

JAVA_HOME: /data/work/java/jdk1.7.0_45
JAVA_HOME:

Почему нельзя получить доступ к переменным среды из скрипта?

Мой .profile выглядит так

#!/bin/ksh
# ...
export JAVA_HOME=/path/to/java_jdk
# ...
...