I am developing a RoR application on two different machines. The iMac works fine, and all Capistrano tasks work as expected. The macbook-pro, however, generates the following error for any cap task (even “cap -T”)
luna:shootingstars sjf$ cap -T
/Users/sjf/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- Bundler/capistrano (LoadError)
from /Users/sjf/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:152:in `require'
from ./config/deploy.rb:30:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:93:in `instance_eval'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:93:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:172:in `load_from_file'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:89:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:86:in `block in load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:86:in `each'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:86:in `load'
from Capfile:8:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:93:in `instance_eval'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:93:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:172:in `load_from_file'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:89:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:86:in `block in load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:86:in `each'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/configuration/loading.rb:86:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/cli/execute.rb:65:in `block in load_recipes'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/cli/execute.rb:65:in `each'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/cli/execute.rb:65:in `load_recipes'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/cli/execute.rb:31:in `execute!'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/lib/capistrano/cli/execute.rb:14:in `execute'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/capistrano-2.9.0/bin/cap:4:in `<top (required)>'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/bin/cap:19:in `load'
from /Users/sjf/.rvm/gems/ruby-1.9.3-p0/bin/cap:19:in `<main>'
As near as I can tell, everything is set up the same on the two machines. The only difference I can find is that on the working machine…
sol:shootingstars sjf$ gem which bundler
/Users/sjf/.rvm/gems/ruby-1.9.3-p0/gems/bundler-1.0.21/lib/bundler.rb
while on the failing machine…
luna:shootingstars sjf$ gem which bundler
/Users/sjf/.rvm/gems/ruby-1.9.3-p0@global/gems/bundler-1.0.21/lib/bundler.rb
Note the “@global” in the ruby path.
Other than that, both machines are running
rvm version 1.10.2
ruby version 1.9.3p0
bundle version 1.0.21
capistrano version 2.9.0
rails version 3.2.1
Thanks for any help
Well, I finally figured out the answer to my own question. Turns out the Macbook Pro with the problem had “case sensitivity” turned on in the filesystem. “Mac OS Extended (Case-sensitive, Journaled)”
Changing the deploy.rb file line from…
to
fixed the problem! (Yay!)