Whenever I try to start cap production deploy , it breaks with the following command
[ebbf9fde] Command: cd /var/www/apps/my_app/releases/20150803171251 && /usr/local/rvm/bin/rvm 2.2.2 do bundle install --path /var/www/apps/my_app/shared/bundle --without development test --deployment --quiet DEBUG [ebbf9fde] /usr/local/rvm/scripts/set: line 19: exec: bundle: not found
I have a user added “deployment” for this deployment, the output of rvm list is
$ rvm list rvm rubies =* ruby-2.2.2 [ x86_64 ] # => - current # =* - current && default # * - default
Further launch of the gem list:
$ gem list *** LOCAL GEMS *** bigdecimal (1.2.6) bundler-unload (1.0.2) executable-hooks (1.3.2) gem-wrappers (1.2.7) io-console (0.4.3) json (1.8.1) minitest (5.4.3) passenger (5.0.15) power_assert (0.2.2) psych (2.0.8) rack (1.6.4) rake (10.4.2) rdoc (4.2.0) rubygems-bundler (1.4.4) rvm (1.11.3.9) test-unit (3.0.8)
My Capfile Content
require 'capistrano/setup' require 'capistrano/deploy' require 'capistrano/rvm' require 'capistrano/bundler' require 'capistrano/rails/assets' require 'capistrano/rails/migrations' Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
Finally, my deploy.rb file contains the following data.
lock '3.4.0' set :app_host, 'ip-address-here' set :application, 'my_app' set :repo_url, ' git@example.com :<not_right>/my_app.git' set :rvm_type, :system set :rvm_ruby_version, '2.2.2' set :passenger_rvm_ruby_version, '2.2.2' set :rbenv_ruby, '2.2.2' set :deploy_to, '/var/www/apps/my_app' set :scm, :git set :format, :pretty set :log_level, :debug set :pty, true set :conditionally_migrate, true set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'vendor/bundle', 'public/system') set :keep_releases, 5 set :migrate_env, "#{ fetch(:stage) }" namespace :deploy do desc 'Restart application' task :restart do on roles(:web), in: :sequence, wait: 5 do execute :mkdir, '-p', release_path.join('tmp') execute :touch, release_path.join('tmp/restart.txt') end end task :httpd_graceful do on roles(:web), in: :sequence, wait: 5 do execute :sudo, "service httpd graceful" end end after :publishing, :restart after :restart, :clear_cache do on roles(:web), in: :groups, limit: 3, wait: 10 do
I get the following error
DEBUG [298e6d4e] Command: cd /var/www/apps/oxygen/releases/20150803172155 && /usr/local/rvm/bin/rvm 2.2.2 do bundle install --path /var/www/apps/oxygen/shared/bundle --without development test --deployment --quiet DEBUG [298e6d4e] /usr/local/rvm/scripts/set: line 19: exec: bundle: not found (Backtrace restricted to imported tasks) cap aborted! SSHKit::Runner::ExecuteError: Exception while executing as deployer@162.243.131.67 : bundle exit status: 127 bundle stdout: /usr/local/rvm/scripts/set: line 19: exec: bundle: not found bundle stderr: Nothing written SSHKit::Command::Failed: bundle exit status: 127 bundle stdout: /usr/local/rvm/scripts/set: line 19: exec: bundle: not found bundle stderr: Nothing written Tasks: TOP => deploy:updated => bundler:install (See full trace by running task with --trace) The deploy has failed with an error: Exception while executing as deployer@162.243.131.67 : bundle exit status: 127 bundle stdout: /usr/local/rvm/scripts/set: line 19: exec: bundle: not found bundle stderr: Nothing written