少し問題があります。 Unixシステムにパスワードのないユーザー(jenkins)があります。 Jenkinsはこのユーザーを使用していくつかのコマンドを実行します。このUnixシステムにnvmをインストールするため、バイナリがどこにあるかをユーザーに/etc/profile
知らせるセクションを追加する必要があります。
実行することで
sudo -u jenkins nvm
次のエラーが発生します。
[USER@HOST ~]$ sudo -u jenkins nvm
/bin/nvm: line 6: /bin/nvm.sh: No such file or directory
この設定は他のユーザーには機能しますが、jenkinsユーザーには機能しません。 jenkinsユーザーは、/ homeフォルダに独自のホームディレクトリがありません。だからそれが効果がないようです。
Jenkinsユーザーにこれらの設定をどのように適用できますか?
Linux xx 3.10.0-957.21.3.el7.x86_64 #1 SMP Fri Jun 14 02:54:29 EDT 2019 x86_64 x86_64 x86_64 GNU/Linux
答え1
シェルにコマンドを読み込んで実行させるようにしたり/etc/profile
、/etc/bashrc
ユーザー切り替えを使用するときに同様のコマンドを実行したり、オプション(たとえば)をsudo
使用する必要があります。-i
--login
sudo -i -u jenkins nvm