9

Jenkins で bash スクリプトをジョブとして実行する際に問題があります (シェルの実行ステップ)。基本的に、Jenkins がスクリプトを実行できない理由をテストするために、スクリプトを 1 行に絞り込みました。ここにあります:

waxsim

だから一行だけです。パラメータなしで実行すると、次の出力が得られるはずです。

No app-path was specified!
usage: waxsim [options] app-path
example: waxsim -s 2.2 /path/to/app.app
Available options are:
    -s sdk  Version number of sdk to use (-s 3.1)
    -f family   Device to use (-f ipad)
    -e VAR=value    Environment variable to set (-e CFFIXED_HOME=/tmp/iphonehome)
    -a  Available SDKs
    -v path Output video recording at path
    -h  Prints out this wonderful documentation!

Jenkins は jenkins ユーザーとして実行されます。ジョブが実行されると、次のように失敗します。

+ waxsim
/var/folders/gx/t63prwt53w7gr2jjt9k66q9800009c/T/hudson4478539334800834890.sh: 
line 3: waxsim: No such file or directory
Build step 'Execute shell' marked build as failure

waxsimjenkinsユーザーとしてログインして手動で実行すると、すべて正常に動作します。マシン上のすべてのユーザーに対して機能します。Jenkinsジョブで実行した場合のみ動作しません。何が問題なのか誰でも知っていますか?

へのフルパスを指定しようとしましたがwaxsim/usr/bin/waxsim違いはありません。

ありがとう!

4

2 に答える 2

5

ターミナルで実行すると機能し、Jenkins で実行すると機能しない理由は些細なことであることが判明しました。

ターミナルで bash を実行し、Jenkins はシェルを使用しています。したがって、Jenkins の実行シェル スクリプトに PATH のエクスポートを追加すると、問題が解決しました。

于 2013-07-18T12:31:39.057 に答える