J'exécute Jenkins depuis l'utilisateur jenkins
qui a $PATH
et quand j'entre dans l'interface web de Jenkins, dans la section Propriétés du système fenêtre ( http://$host/systemInfo
) Je vois une autre $PATH
.
J'ai installé Jenkins sur Centos avec le rpm natif du site de Jenkins. J'utilise le script de démarrage fourni avec l'installation en utilisant sudo /etc/init.d/jenkins start
Quelqu'un peut-il m'expliquer pourquoi cela se produit ?
1 votes
Si vous vous connectez en tant que jenkins, et
echo $PATH
Est-ce que ça correspond à ce que vous voyez dans Jenkins ?3 votes
@Dave non, ça ne correspond pas. Je ne comprends pas pourquoi.
8 votes
La raison pour laquelle il ne correspond pas est que lorsque vous vous connectez en tant qu'utilisateur jenkins, vous invoquez un shell de connexion, alors que jenkins exécute simplement /bin/sh -xe {votre script} et ne passe donc pas par le même ensemble de scripts qui modifient la variable d'environnement PATH. En fait, l'ensemble des scripts varie en fonction de la saveur particulière de *nix et/ou du shell que vous avez installé. J'ai testé sur AWS Linux AMI avec jenkins et malheureusement aucun des /etc/profile /etc/profile.d/xxx.sh /etc/bashrc /etc/environment ~/.bash_profile ~/.profile ~/.bashrc n'a pu affecter le PATH passé à /bin/sh.