Ruby on rails Capistrano部署问题

Ruby on rails Capistrano部署问题,ruby-on-rails,ubuntu,deployment,rvm,capistrano,Ruby On Rails,Ubuntu,Deployment,Rvm,Capistrano,我一直在与Capistrano搏斗,几天来我一直在尝试部署一个测试rails应用程序,我想我就快到了,但是当我运行cap deploy时,我遇到了这个错误: failed: "rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'default' -c 'cd var/rails/test_app/current/releases/20120619215252 && bundle install --gemfile var/r

我一直在与Capistrano搏斗,几天来我一直在尝试部署一个测试rails应用程序,我想我就快到了,但是当我运行
cap deploy
时,我遇到了这个错误:

failed: "rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'default' -c 'cd var/rails/test_app/current/releases/20120619215252 && bundle install --gemfile var/rails/test_app/current/releases/20120619215252/Gemfile --path var/rails/test_app/current/shared/bundle --deployment --quiet --without development test'" on my.vps.ip.address
这意味着什么?我如何解决这个问题

谢谢

这是我的deploy.rb文件,如果有帮助:

# RVM

$:.unshift(File.expand_path('./lib', ENV['rvm_path']))
require "rvm/capistrano"
set :rvm_ruby_string, 'default'
set :rvm_type, :system

# Bundler

require "bundler/capistrano"

# General

set :application, "test_app"
set :user, "rails"

set :deploy_to, "var/rails/test_app/current"
set :deploy_via, :copy

set :use_sudo, false

# Git

set :scm, :git
set :repository,  "~/Projects/test_app/.git"
set :branch, "master"

# VPS

role :web, "my.vps.ip.address"
role :app, "my.vps.ip.address"
role :db,  "my.vps.ip.address", :primary => true
role :db,  "my.vps.ip.address"

# Passenger

namespace :deploy do
 task :start do ; end
 task :stop do ; end
 task :restart, :roles => :app, :except => { :no_release => true } do
  run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}"
 end
end

Capistrano正在尝试进入最新的部署文件夹并运行“bundle install”。 问题似乎是capistrano试图在其中执行以下操作的文件夹: 您正在执行
cd-var/rails/test\u-app/current/releases/20120619215252&&bundle-install…
路径开头缺少/,应该是/var/rails。。。 您应该在覆盖配方中某个位置的路径时出错

看看你的食谱,你应该有(注意/)

不要指定“当前”文件夹,这是capistrano默认行为。 确保/var/rails/test_app/由用于部署的用户拥有。其他:
chown-R rails:rails/var/rails/test\u app/
rails:rails,因为您在配方中设置了:user,“rails”


另外,不要忘记
cap deploy:setup
来构建目录结构…

@Julien\u p。我刚刚尝试了
/var/
,但我认为这不是问题所在,因为我比以前更早地遇到这个错误:
“rvm_path=/usr/local/rvm/usr/local/rvm/bin/rvm shell'default'-c'cd/var/rails/test_app/current/releases&&tar xzf/tmp/20120619221837.tar.gz&&rm/tmp/20120619221837.tar.gz”“
无论如何
var/
是不正确的,我不确定您是否可以直接从git存储库复制
deploy\u。此外,您的服务器上不存在/var/rails/test\u app/current/releases,请删除deploy文件夹目标的“当前”部分。与您的问题无关,自1.11.3起,RVM已将RVM/capistrano提取到gem,不再需要第一行。。。但是你应该得到一个警告——只需阅读输出。
set :deploy_to, "/var/rails/test_app/"