"связка не найдена" в Capistrano для использования на рельсах - PullRequest
0 голосов
/ 02 марта 2012

Вот часть сообщения от cap deploy:

 ** [out :: 176.195.225.93] /home/cj/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `
to_specs': Could not find bundler (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2,
 rdoc-3.9.4] (Gem::LoadError)
 ** [out :: 176.195.225.93] from /home/cj/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256
:in `to_spec'
 ** [out :: 176.195.225.93] from /home/cj/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems.rb:1210:in `gem'
 ** [out :: 176.195.225.93] from /home/cj/.rvm/gems/ruby-1.9.3-p125/bin//bundle:18:in `<main>'
    command finished in 143ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /var/www/byop/releases/20120302043344; true"
    servers: ["176.195.225.93"]
    [176.195.225.93] executing command
    command finished in 131ms
failed: "env PATH=/home/cj/.rvm/gems/ruby-1.9.3-p125/bin/:$PATH BUNDLE_PATH=/home/cj/.rvm/gems/ruby-1.9.3-p125/bin/
 sh -c 'cd /var/www/byop/releases/20120302043344 && bundle install --gemfile /var/www/byop/releases/20120302043344/Gemfile --
path /var/www/byop/shared/bundle --deployment --quiet --without development test'" on 176.195.225.93

Есть несколько сообщений по той же проблеме, и ни одно из решений не сработало.Мы устанавливаем значение по умолчанию в deploy.rb как:

set :default_environment, {
  'PATH' => "/home/cj/.rvm/gems/ruby-1.9.3-p125/bin/:$PATH",
  'BUNDLE_PATH'  => '/home/cj/.rvm/gems/ruby-1.9.3-p125/bin/'  
}

Но в шапке все еще есть проблема с поиском пакета.

Любая помощь приветствуется.Большое спасибо.

ОБНОВЛЕНИЕ:

вот вывод пакета -v в / var / www / byop:

Bundler version 1.0.22

1 Ответ

0 голосов
/ 29 сентября 2012

Проблема может заключаться в том, что вам нужно создать упаковщик упаковщика. Вы можете сделать это таким образом (например, в вашем deploy.rb)

require "rvm/capistrano" # http://beginrescueend.com/integration/capistrano/

# rvm-capistrano settings
set :rvm_ruby_string, ENV['GEM_HOME'].gsub(/.*\//,"")

namespace :rvm do
  task :create_bundle_wrapper, roles: :app do
    run "rvm wrapper #{rvm_ruby_string} bundle bundle"
  end  
end

after "deploy:create_symlink", "rvm:create_bundle_wrapper"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...