Ubuntu 20.04, Ruby 3.0.1, rails 6.1.3.1, Capistrano Version: 3.16.0 (Rake Version: 13.0.3)
Running any "cap" command results in the follow, for example :-
>> bundle exec cap install --trace
(in /)
cap aborted!
LoadError: cannot load such file -- config/deploy
Did you mean? rbconfig/sizeof
/Capfile:4:in `load'
/Capfile:4:in `<top (required)>'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/rake_module.rb:29:in `load'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/rake_module.rb:29:in `load_rakefile'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/application.rb:703:in `raw_load_rakefile'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/application.rb:104:in `block in load_rakefile'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/application.rb:186:in `standard_exception_handling'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/application.rb:103:in `load_rakefile'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/application.rb:82:in `block in run'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/application.rb:186:in `standard_exception_handling'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/rake-13.0.3/lib/rake/application.rb:80:in `run'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/capistrano-3.16.0/lib/capistrano/application.rb:14:in `run'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/capistrano-3.16.0/bin/cap:3:in `<top (required)>'
/home/mike/.rbenv/versions/3.0.1/bin/cap:23:in `load'
/home/mike/.rbenv/versions/3.0.1/bin/cap:23:in `<top (required)>'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/cli/exec.rb:63:in `load'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/cli/exec.rb:63:in `kernel_load'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/cli/exec.rb:28:in `run'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/cli.rb:494:in `exec'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/cli.rb:30:in `dispatch'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/cli.rb:24:in `start'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/exe/bundle:49:in `block in <top (required)>'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/lib/bundler/friendly_errors.rb:130:in `with_friendly_errors'
/home/mike/.rbenv/versions/3.0.1/lib/ruby/gems/3.0.0/gems/bundler-2.2.16/exe/bundle:37:in `<top (required)>'
/home/mike/.rbenv/versions/3.0.1/bin/bundle:23:in `load'
/home/mike/.rbenv/versions/3.0.1/bin/bundle:23:in `<main>'
I've tried creating new rails apps and the same error occurs.
Tried many different approaches (down grading ruby, rails etc) with same outcome. I think it may be a permissions issue and any help gratefully received.
UPDATE #2
Yep, running the command in the root of the application.
See code snippets below.
~/WebProjects/test_site$ ls -1
app
bin
config
config.ru
db
Gemfile
Gemfile.lock
lib
log
package.json
public
Rakefile
README.md
storage
test
tmp
vendor
~/WebProjects/test_site$ bundle exec cap install
(produces the error output in the question above)
Feels like something really simple but I just can't fathom it out (after many hours of head scratching!).
UPDATE #3
~/WebProjects/test_site$ cat /Capfile
load 'deploy' if respond_to?(:namespace) # cap2 differentiator
Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }
load 'config/deploy' # remove this line to skip loading any of the default tasks
A
Capfilewas in the Ubuntu root directory (/) which was causing the problem.