2017-08-15 19 views
2

SSH経由でリモートマシンにソースローディング、ビルド、およびデプロイメントのステージを含むJenkinsパイプラインがあります。問題は最後の問題です。私は、リモートサーバー上で次のテンプレートのスクリプトを保存します。リモートサーバーに接続された端末で実行された場合Jenkinsパイプラインを介してリモートsshサーバにデプロイメントスクリプトを実行

#!/bin/bash 
bash /<pathTo>/jboss-cli.sh --command="deploy /<anotherPath>/service.war --force" 

それは正常に動作します。

私はジェンキンスを介して受信した最高の成果は、ジェンキンスコンソール出力で

/<pathTo>/jboss-cli.sh: line 87: usr/bin/java/bin/java: No such file or directory

です。

は、任意の提案が理解される等のパイプライン・スクリプトのJavaへのパスをエクスポートは、bashおよびSH切り替える

を試してみました。 ありがとう!

P.S.それはUSRないは/ usrからのパスを検討しているエラー行を1として

sh """ 
ssh -o StrictHostKeyChecking=no $connectionName 'bash /<pathToTheScript>/<scriptName>.sh' 
""" 

答えて

0
line 87: **usr/bin/java/bin/java**: No such file or directory 

:ジェンキンスからの実行の呼び出しは次のようになります。これが問題なのかどうか確認できますか?

申し訳ありませんが、これはコメントセクションにあるはずですが、まだコメントを追加する権利はありません。

+0

その理由は不明ですが、私はあなたの助けを借りて問題を解決しました。最初に、87行目は、(さらにjboss-cli.shの中で)JAVA = "$ JAVA_HOME/bin/java"のように初期化された変数を使用していました 結果、$ JAVA_HOMEの値はJenkinsからサーバー上の端末。 端末の値をエコーし​​、jboss-cli.sh(/usr/java/jdk1.8.0_121/bin/java)に次のようにハードコードしました。 JAVA = "/ usr/java/jdk1 .8.0_121/bin/java " 再デプロイは、ビルド後に正しく動作します。ありがとうございました。理由についての任意の考えをまだ感謝します:) – Panz0r

関連する問題