Weird problem "uninitialized constant Capistrano"

Hi friends!

After hours of hard work searching for a solution, I appeal to the community to help me.
I’m using Rails 3.2.3, Postgresql, RVM, and running Ubuntu Server 11.10 in my own server machine.
The command “cap deploy:check” returns:

You appear to have all necessary dependencies installed

You have the rvm-capistrano gem in the main bit of your gemfile, so
when your app boots bundler will try and load it. In turn, this refers
to capistrano, which isn't installed on your production servers
because it's only in your development group.

Move the rvm-capistrano gem to the development group, alongside
capistrano and you should be fine.

Fred

Hi friends!

After hours of hard work searching for a solution, I appeal to the community to help me.
I’m using Rails 3.2.3, Postgresql, RVM, and running Ubuntu Server 11.10 in my own server machine.
The command “cap deploy:check” returns:

You appear to have all necessary dependencies installed


Gemfile:
source ‘https://rubygems.org
gem ‘rails’, ‘3.2.3’
gem ‘pg’
gem ‘annotate’, :git => ‘git://github.com/ctran/annotate_models.git
gem ‘kaminari’
gem ‘factory_girl_rails’
gem ‘paperclip’, ‘~> 3.0’

group :assets do
gem ‘sass-rails’, ‘~> 3.2.3’
gem ‘coffee-rails’, ‘~> 3.2.1’
gem ‘uglifier’, ‘>= 1.0.3’
end
gem ‘jquery-rails’

group :development do
gem ‘rspec-rails’
gem ‘capistrano’
end

gem ‘rvm-capistrano’


Capfile:
load ‘deploy/assets’
Dir[‘vendor/gems//recipes/.rb’,‘vendor/plugins//recipes/.rb’].each { |plugin| load(plugin) }
load ‘config/deploy’


deploy.rb:
require “bundler/capistrano”
require “rvm/capistrano”
set :rvm_ruby_string, ‘1.9.3’
set :application, “digifoto”
set :repository, “git@github.com:xxxxxxxx/digifoto.git”
set :branch, “production”

set :scm, :git
set :user, “digifoto.com
set :deploy_to, “/home/digifoto.com/apps/#{application}
set :deploy_via, :remote_cache

set :use_sudo, false
set :keep_releases, 3

role :web, “xxx.xx.xx.xx” # Your HTTP server, Apache/etc
role :app, “xxx.xx.xx.xx” # This may be the same as your Web server
role :db, “xxx.xx.xx.xx”, :primary => true # This is where Rails migrations will run

set :port, 22

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


The command “cap deploy:setup” works fine but “cap deploy:migrations” end up with this error:

rake aborted!
*** [err :: xxx.xx.xx.xx] uninitialized constant Capistrano
*** [err :: xxx.xx.xx.xx]
*** [err :: xxx.xx.xx.xx] (See full trace by running task with --trace)
command finished in 4130ms
failed: “rvm_path=$HOME/.rvm/ $HOME/.rvm/bin/rvm-shell ‘1.9.3’ -c ‘cd /home/digifoto.com/apps/digifoto/releases/20120415025916 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile’” on xxx.xx.xx.xx

I tried many things, like run the command: “bundle exec rake assets:clean” and deleting the line “//= require_tree” from app/assets/javascripts/application.js but nothing works!
Any help will be much appreciated!

Hi friends!

After hours of hard work searching for a solution, I appeal to the community to help me.
I’m using Rails 3.2.3, Postgresql, RVM, and running Ubuntu Server 11.10 in my own server machine.
The command “cap deploy:check” returns:

You appear to have all necessary dependencies installed


Gemfile:
source ‘https://rubygems.org
gem ‘rails’, ‘3.2.3’
gem ‘pg’
gem ‘annotate’, :git => ‘git://github.com/ctran/annotate_models.git
gem ‘kaminari’
gem ‘factory_girl_rails’
gem ‘paperclip’, ‘~> 3.0’

group :assets do
gem ‘sass-rails’, ‘~> 3.2.3’
gem ‘coffee-rails’, ‘~> 3.2.1’
gem ‘uglifier’, ‘>= 1.0.3’
end
gem ‘jquery-rails’

group :development do
gem ‘rspec-rails’
gem ‘capistrano’
end

gem ‘rvm-capistrano’


Capfile:
load ‘deploy/assets’
Dir[‘vendor/gems//recipes/.rb’,‘vendor/plugins//recipes/.rb’].each { |plugin| load(plugin) }
load ‘config/deploy’


deploy.rb:
require “bundler/capistrano”
require “rvm/capistrano”
set :rvm_ruby_string, ‘1.9.3’
set :application, “digifoto”
set :repository, “git@github.com:xxxxxxxx/digifoto.git”
set :branch, “production”

set :scm, :git
set :user, “digifoto.com
set :deploy_to, “/home/digifoto.com/apps/#{application}
set :deploy_via, :remote_cache

set :use_sudo, false
set :keep_releases, 3

role :web, “xxx.xx.xx.xx” # Your HTTP server, Apache/etc
role :app, “xxx.xx.xx.xx” # This may be the same as your Web server
role :db, “xxx.xx.xx.xx”, :primary => true # This is where Rails migrations will run

set :port, 22

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


The command “cap deploy:setup” works fine but “cap deploy:migrations” end up with this error:

rake aborted!
*** [err :: xxx.xx.xx.xx] uninitialized constant Capistrano
*** [err :: xxx.xx.xx.xx]
*** [err :: xxx.xx.xx.xx] (See full trace by running task with --trace)
command finished in 4130ms
failed: “rvm_path=$HOME/.rvm/ $HOME/.rvm/bin/rvm-shell ‘1.9.3’ -c ‘cd /home/digifoto.com/apps/digifoto/releases/20120415025916 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile’” on xxx.xx.xx.xx

I tried many things, like run the command: “bundle exec rake assets:clean” and deleting the line “//= require_tree” from app/assets/javascripts/application.js but nothing works!
Any help will be much appreciated!

WOW! It worked!
It was exactly what you said!
This was a newbie question!

Thank you very, very much!