Size: a a a

2020 July 16

mm

myname mylastname in jenkins_ru
Спасибо, ребята за оперативное участие - пошел проверять оба подхода...
источник

II

Igor Ivanov in jenkins_ru
а как заставить дженкинс использовать те же переменные окружения (в частности PATH) что доступны самому юзеру на ноде?
[root@JENKINS ~]# sudo -i --user=jenkins-worker
-bash-4.2$ echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin

но при этом
15:21:37  [Pipeline] sh
15:21:39  + echo $PATH
15:21:39  /usr/local/bin:/usr/bin

я конечно могу прокидывать для каждой ноды в дженкинсовые енввары PATH+SBIN=/sbin:/usr/sbin, но как-то это сильно муторно, и не спасёт от добавления новых путей
источник

I

Ilgiz in jenkins_ru
Igor Ivanov
а как заставить дженкинс использовать те же переменные окружения (в частности PATH) что доступны самому юзеру на ноде?
[root@JENKINS ~]# sudo -i --user=jenkins-worker
-bash-4.2$ echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin

но при этом
15:21:37  [Pipeline] sh
15:21:39  + echo $PATH
15:21:39  /usr/local/bin:/usr/bin

я конечно могу прокидывать для каждой ноды в дженкинсовые енввары PATH+SBIN=/sbin:/usr/sbin, но как-то это сильно муторно, и не спасёт от добавления новых путей
У тебя неинтерактивный режим, поэтому дженкинс не берет пути из домашнего rc файлы. Либо прописываешь их в джобе, либо пишешь скрипт в /etc/profile.d
источник

I

Ilgiz in jenkins_ru
типа такого
- [ sh, -c, 'echo "PATH=/usr/local/bin:\$PATH" > /etc/profile.d/custom.sh' ]
источник

I

Ilgiz in jenkins_ru
наверное сработает)
источник

E

Elenhil in jenkins_ru
Igor Ivanov
а как заставить дженкинс использовать те же переменные окружения (в частности PATH) что доступны самому юзеру на ноде?
[root@JENKINS ~]# sudo -i --user=jenkins-worker
-bash-4.2$ echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin

но при этом
15:21:37  [Pipeline] sh
15:21:39  + echo $PATH
15:21:39  /usr/local/bin:/usr/bin

я конечно могу прокидывать для каждой ноды в дженкинсовые енввары PATH+SBIN=/sbin:/usr/sbin, но как-то это сильно муторно, и не спасёт от добавления новых путей
1) можно добавить глобально
источник

II

Igor Ivanov in jenkins_ru
[root@JENKINS ~]# cat /etc/profile.d/jenkins-path.sh
PATH=/usr/local/sbin:/sbin:/usr/sbin:$PATH
не сработало, увы
с глобальным редактированием PATH в баше вообще пиздец какой-то лютый, на каждый системе свои пути до этих конфигов, и ни один совет из гугла нихрена не работает...
источник

E

Elenhil in jenkins_ru
2) юзай фулпас
источник

E

Elenhil in jenkins_ru
зачем тебе сбин в пасе, если ты можешь в начале скрипта сделать BIN=/usr/sbin/bin
источник

E

Elenhil in jenkins_ru
и дальше звать $BIN smth
источник

II

Igor Ivanov in jenkins_ru
я не хочу перед запуском каждого скрипта настраивать енввары, и предпочитаю не использовать полные пути в самих скриптах — уже подрывался на том что не все бинари у дженкинса и у разработчика лежат одинаково
источник

I

Ilgiz in jenkins_ru
Igor Ivanov
[root@JENKINS ~]# cat /etc/profile.d/jenkins-path.sh
PATH=/usr/local/sbin:/sbin:/usr/sbin:$PATH
не сработало, увы
с глобальным редактированием PATH в баше вообще пиздец какой-то лютый, на каждый системе свои пути до этих конфигов, и ни один совет из гугла нихрена не работает...
нужно ещё передернуть агента. Ну, это реально не выход, так что лучше искать другие варианты
источник

E

Elenhil in jenkins_ru
Igor Ivanov
я не хочу перед запуском каждого скрипта настраивать енввары, и предпочитаю не использовать полные пути в самих скриптах — уже подрывался на том что не все бинари у дженкинса и у разработчика лежат одинаково
ну, это проблемы разраба же)
источник

I

Ilgiz in jenkins_ru
а в домаше .bashrc лежит? может проще сделать . ~/.bashrc?
источник

II

Igor Ivanov in jenkins_ru
Ilgiz
нужно ещё передернуть агента. Ну, это реально не выход, так что лучше искать другие варианты
передёргивал, не помогло
источник

II

Igor Ivanov in jenkins_ru
Ilgiz
а в домаше .bashrc лежит? может проще сделать . ~/.bashrc?
а вот это помогло
теперь конечно у обычного юзера (в ssh) два раза этот /usr/local/sbin в PATH, ибо один раз он начал прилетать из .bashrc, а второй из какой-то другой системной фигни, но жить стало веселее
источник

AZ

Alexander Zvenigorod... in jenkins_ru
Подкажите, как определить глобальную переменную в в стейдже, чтобы эту же переменную использовать в других стейджах?
источник

E

Elenhil in jenkins_ru
Alexander Zvenigorodsky
Подкажите, как определить глобальную переменную в в стейдже, чтобы эту же переменную использовать в других стейджах?
var = ''
pipeline{
stage1{
var='asd'
}
stage2{
echo var
}
}
источник

AZ

Alexander Zvenigorod... in jenkins_ru
Elenhil
var = ''
pipeline{
stage1{
var='asd'
}
stage2{
echo var
}
}
Без вынесения вверх нельзя никак?
источник

E

Elenhil in jenkins_ru
Alexander Zvenigorodsky
Без вынесения вверх нельзя никак?
ytn
источник