0

Jenkins で実行しようとしている以下の ssh スクリプトがあります。シェルから呼び出すと正常に動作します。

#ssh to remote machine
sshpass ssh 10.40.94.36 -l root -o StrictHostKeyChecking=no
#Remove old slave.jar 
rm -f slave.jar
#download slave.jar to that machine
wget http://10.40.95.14:8080/jnlpJars/slave.jar
pwd
#make new dir to that machine
mkdir //var//Jenkins
# make slave online
java -jar slave.jar -jnlpUrl http://10.40.95.14:8080/computer/nodeV/slave-agent.jnlp

このスクリプトをシェルで実行すると、jar ファイルがリモート マシンにダウンロードされ、新しいディレクトリも作成されます。しかし、jenkinsのシェルプラグインで呼び出すと、すべてのコマンドが別々に実行されます。そのため、jar はマスターでダウンロードされ、ディレクトリもマスターで作成されます。

また、パスワードなしの自動ログインに sshpass を使用していますが、これは時々失敗します。これを行う他の方法はありますか?

4

0 に答える 0