Rails 3.2.2 hat in meiner Entwicklungsumgebung und auf meinem Server gut funktioniert.Warum wird nicht installieren Bundles 3.2.3 auf meinem Server?
I bis 3.2.3 zu aktualisieren ich versucht, durch Änderung:
gem 'rails', '3.2.2'
zu
gem 'rails', '3.2.3'
dann ausgeführt wird:
bundle update
bundle
Alles geht gut, bis ich versuche zu implementieren zu meinem Server. Während der deploy, erhalte ich diese Meldung:
An error occured while installing railties (3.2.3), and Bundler cannot continue.
Make sure that `gem install railties -v '3.2.3'` succeeds before bundling.
Ich habe in den Server eingeloggt und lief das Juwel railties -v ‚3.2.3‘ Befehl installieren und es funktioniert ohne Probleme. Aber die Bereitstellung schlägt immer auf die gleiche Weise fehl.
Ich habe versucht, das Cache-Verzeichnis wie gezeigt here zu löschen, aber ich bin mir nicht sicher, ob ich das richtig mache. Ich benutze rvm auf dem Server und meiner Entwicklungsumgebung.
Kann mir jemand helfen, mich in eine Richtung darauf zu zeigen?
Hier ist meine deploy.rb Datei:
require "bundler/capistrano"
$:.unshift(File.expand_path('./lib', ENV['rvm_path'])) # Add RVM's lib directory to the load path.
require "rvm/capistrano" # Load RVM's capistrano plugin.
set :application, "teamsite"
set :repository, "[email protected]:user/teamsite.git"
set :deploy_to, "/home/website.com/rails/application/"
set :user, "website.com"
set :scm, :git
set :use_sudo, false
default_run_options[:pty] = true
set :branch, "master"
set :scm_verbose, true
set :deploy_via, :remote_cache
ssh_options[:forward_agent] = true
task :staging do
role :web, "staging.website.com"
role :app, "staging.website.com"
role :db, "staging.website.com", :primary => true
end
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
namespace :assets do
task :precompile, :roles => :web, :except => { :no_release => true } do
from = source.next_revision(current_revision)
if capture("cd #{latest_release} && #{source.local.log(from)} vendor/assets/ app/assets/ | wc -l").to_i > 0
run %Q{cd #{latest_release} && #{rake} RAILS_ENV=#{rails_env} #{asset_env} assets:precompile}
else
logger.info "Skipping asset pre-compilation because there were no asset changes"
end
end
end
end
namespace :customs do
task :create_symlink, :roles => :app do
run <<-CMD
ln -nfs #{shared_path}/files #{release_path}/files
CMD
run <<-CMD
ln -nfs #{shared_path}/drawings #{release_path}/drawings
CMD
run <<-CMD
ln -nfs #{shared_path}/photos #{release_path}/photos
CMD
end
end
after "deploy:create_symlink","customs:create_symlink"
after "deploy", "deploy:cleanup"
aktualisieren
konnte ich endlich dieses Problem beheben, indem auf einen anderen Benutzer bereitstellen. Aber die Frage bleibt: Wie würde ich den Edelstein-Cache für den alten Benutzer löschen?
Bitte geben Sie Ihr Skript ein – mpapis