0

Capistrano と RVM を使用してデプロイしようとしていますが、実行時にcap bundler:install_bundlerバンドラーをインストールすることになっていても成功します。その後、実行cap deployするとバンドラーがインストールされていないというエラーで失敗します。

** [out :: victorstan.com] ERROR: Gem bundler is not installed, run `gem install bundler` first.

なぜバンドラーをインストールするのに、それが見つからないか、間違った場所にインストールするのか (私は推測しますか?)。ありがとう!

ここに私の deploy.rb スクリプトの一部があります:

set :application,       "dinner"
set :domain,            "victorstan.com"
set :repository,        "ssh://#{domain}/~/#{application}.git"
set :use_sudo,          false
set :user,              "victorstan"  # The server's user for deploys
set :scm,               :git
set :scm_username,      "passenger"
set :deploy_to,         "/srv/www/#{application}"
set :keep_releases,     2
set :branch,            "master"
set :deploy_via,        :copy # won't make cap prompt for password when deploying
set :scm_verbose,       true
set :rvm_ruby_string,   'ruby-2.0.0-p195@dinner'
set :rvm_type,          :user
set :rvm_install_type,  :stable
set :whenever_command,  "bundle exec whenever"


require "bundler/capistrano"
require "rvm/capistrano"
require "whenever/capistrano"

cap を使用してバンドラーをインストールしようとすると、次のように機能します。

cap bundler:install_bundler
  * 2013-06-08 15:33:54 executing `bundler:install_bundler'
  * executing "gem install bundler"
    servers: ["victorstan.com"]
    [victorstan.com] executing command
 ** [out :: victorstan.com] Successfully installed bundler-1.3.5
 ** [out :: victorstan.com] 1 gem installed
    command finished in 1373ms

そして、実行時の出力は次のcap deployとおりです。

Switched to a new branch 'deploy'
    command finished in 984ms
  * Compressing /var/folders/w4/_6g_9lqd491_6cmhzb0kcmzh0000gn/T/20130608192600 to /var/folders/w4/_6g_9lqd491_6cmhzb0kcmzh0000gn/T/20130608192600.tar.gz
    executing locally: tar czf 20130608192600.tar.gz 20130608192600
    command finished in 53ms
    servers: ["victorstan.com"]
 ** sftp upload /var/folders/w4/_6g_9lqd491_6cmhzb0kcmzh0000gn/T/20130608192600.tar.gz -> /tmp/20130608192600.tar.gz
    [victorstan.com] /tmp/20130608192600.tar.gz
    [victorstan.com] done
  * sftp upload complete
  * executing "cd /srv/www/dinner/releases && tar xzf /tmp/20130608192600.tar.gz && rm /tmp/20130608192600.tar.gz"
    servers: ["victorstan.com"]
    [victorstan.com] executing command
    command finished in 467ms
  * 2013-06-08 15:26:05 executing `deploy:finalize_update'
    triggering before callbacks for `deploy:finalize_update'
  * 2013-06-08 15:26:05 executing `bundle:install'
  * executing "cd /srv/www/dinner/releases/20130608192600 && bundle install --gemfile /srv/www/dinner/releases/20130608192600/Gemfile --path /srv/www/dinner/shared/bundle --deployment --quiet --without development test"
    servers: ["victorstan.com"]
    [victorstan.com] executing command
 ** [out :: victorstan.com] ERROR: Gem bundler is not installed, run `gem install bundler` first.
    command finished in 598ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /srv/www/dinner/releases/20130608192600; true"
    servers: ["victorstan.com"]
    [victorstan.com] executing command
    command finished in 513ms
failed: "rvm_path=$HOME/.rvm/ $HOME/.rvm/bin/rvm-shell 'ruby-2.0.0-p195@dinner' -c 'cd /srv/www/dinner/releases/20130608192600 && bundle install --gemfile /srv/www/dinner/releases/20130608192600/Gemfile --path /srv/www/dinner/shared/bundle --deployment --quiet --without development test'" on victorstan.com
4

2 に答える 2