ruby-on-rails - golondrinas - gem capistrano
Error de implementación de Capistrano para los rieles-paquete: no encontrado (3)
He tenido los mismos problemas. A continuación se muestra la solución para RBenv y RVM.
RBENV
Instale correctamente RBenv. Instalar la gema de paquete. Pefrorm ''rbenv rehash''.
Agregar a deploy.rb o deploy / .rb
set :default_environment, { ''PATH'' => ''$HOME/.rbenv/shims:$HOME/.rbenv/bin:$PATH'' }
RVM
Instalar correctamente RVM. Instalar la gema de paquete.
gem ''rvm-capistrano''
deloy.rb o desplegar / .rb
require ''rvm/capistrano''
set :rvm_ruby_string, ''ruby-2.0.0-p247'' # Change to your ruby version
set :rvm_type, :system # :user if RVM installed in $HOME
Para más información de configuración, lea: https://github.com/wayneeseguin/rvm-capistrano
Buena suerte.
Esta es la primera vez que estoy implementando y obteniendo errores.
Aquí está mi archivo deploy.rb que requiere el conjunto ''bundler / capistrano'': aplicación, "app"
set :scm, :git
set :repository, "[email protected]:myname/#{application}.git"
set :branch, "master"
server "198.12.78.92", :web, :app, :db, primary: true
set :user, "myname"
set :deploy_to, "/home/#{user}/public_html/#{application}"
set :deploy_via, :remote_cache
set :use_sudo, false
default_run_options[:pty] = true
ssh_options[:forward_agent] = true
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
Aquí está el error que estoy recibiendo.
*** [deploy:update_code] rolling back
* executing "rm -rf /home/myname/public_html/app/releases/20130313073408; true"
servers: ["198.12.78.92"]
[198.12.78.92] executing command
command finished in 891ms
failed: "sh -c ''cp -RPp /home/myname/public_html/app/shared/cached-copy /home/myname/public_html/app/releases/20130313073408 && (echo dd92017bc8bb7f951df52d6a14c933e3033fd24b > /home/myname/public_html/app/releases/20130313073408/REVISION)''" on 198.12.78.92
EDITAR - He comentado "set: deploy_via,: remote_cache" y ahora obtengo bundle: error no encontrado
OK Parece que la respuesta es (ver mi comentario a tu pregunta):
Tener un rvm reciente instalado tanto en su estación de trabajo como en el servidor (tengo 1.17.1).
añadir:
gem ''rvm-capistrano''
a su Gemfile (grupo interno: desarrollo como la gema capistrano)
añadir:
require "rvm/capistrano"
require "bundler/capistrano"
a su config / deploy.rb
Deberias hacer eso
Si usa rbenv, ponga esto en .bashrc
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
Antes de la siguiente línea, Capistrano carga el entorno incluso si se conecta con una shell no interactiva.
# If not running interactively, don''t do anything
[ -z "$PS1" ] && return
Probablemente también funcionará también con la inicialización de rvm