0

environment=development で実行されているステージング サーバーにデプロイしています。私の展開スクリプトはメッセージで失敗しますCould not find gem 'webmock (>= 0) ruby' in the gems available on this machine.が、Gemfile にはグループにのみリストされているため、スクリプトがその gem を必要とする理由がわかりませんtest

デプロイ中にステージング サーバーが Webmock を要求しようとする理由がわかりましたか?

私のデプロイスクリプト

私の展開スクリプトのコマンドが失敗するのは次のとおりです。

executing ["cd /var/www/clu2/staging/releases/20130429170940 && bundle exec whenever --update-crontab staging --set environment=development --roles db"]

1 つ前のコマンドでは、スクリプトが実行され、 gembundle installが省略されます。test

executing ["cd /var/www/clu2/staging/current && bundle install --without=test --no-update-sources"]

Webmock の使用はテストのみです

Webmock は、私の spec_helper ファイルでのみ必要であることがわかります。

$ grep -r webmock .
./Gemfile:  gem "webmock"
./Gemfile.lock:    webmock (1.11.0)
./Gemfile.lock:  webmock
./spec/spec_helper.rb:  require "webmock/rspec"

Gemfile で webmock がテスト gem として指定されていることがわかります。

group :test do
  gem 'spork-rails' # pre-load rails environment for faster test launches
  gem "webmock"
end
4

1 に答える 1