私は現在、キュウリのタスクのいくつかに対してジェンキンスビルドを実行しようとしています。 Bundlerを使用して、すべてのgemがインストールされました。宝石はベンダーフォルダーに保存されます。
しかし、シェルの実行ビルドステップでbundle install --deployment
を実行しようとすると、次のエラーが発生します。
Started by user anonymous
Building in workspace /Users/Shared/Jenkins/Home/jobs/cukes/workspace
[workspace] $ /bin/sh -xe/var/folders/zz/zyxvpxvq6csfxvn_n0000004000001/T/hudson4461284045505361460.sh
+ bundle install --deployment
/var/folders/zz/zyxvpxvq6csfxvn_n0000004000001/T/hudson4461284045505361460.sh: line 2: bundle: command not found
Build step 'Execute Shell' marked build as failure
Finished: FAILURE
これは私を夢中にさせています!私のローカルマシンで問題なく動作します。ジェンキンスが私の宝石を見ることができないのはなぜですか?
どんな助けでも素晴らしいでしょう!
乾杯、ジョン
Jenkinsのインストール方法によっては、別のユーザー、通常はユーザーjenkins
として実行されている場合があります。 bundle
を/usr/local/bin
のようにデフォルトのPATHにない非標準のディレクトリにインストールした場合は、次のことを行う必要があります。
/usr/local/bin
をjenkinsユーザーのPATHに追加します(〜jenkins/.bashrcを確認してください)またはbundle
を参照するようにビルドスクリプトを変更します。バンドルが/usr/local/bin/bundle
にインストールされている場合(which bundle
でこれを決定します)、次のように/usr/bin
にバンドルするシンボリックリンクを追加できます。
ln -s /usr/local/bin/bundle /usr/bin/bundle
最初に確認すること:
bundle
がインストールされていることを確認してください。(パス/環境を確認するには:env
を実行するシェルビルドステップを挿入します)
Getting Started Guide で推奨されている方法なので、私は元々warファイル経由でインストールしていました。ただし、ユーザーハンドブックを見ると、 Jenkinsをインストールする にはおそらくより良い方法があることが明らかになります。
次の方法で、macOS上のJenkinsのWARファイルをアンインストールしました。
次に home-brew経由で再インストール し、bundle
が機能し始めました。