我在capistrano中设置了一个执行预编译和db:migrate的任务。出于某种原因,当我在服务器上手动运行这些任务时,它们工作得非常好,但是当它们通过rake任务运行时,它们会给我错误。
以下是capistrano任务:
after :restart, :clear_cache do
on roles(:web), in: :groups, limit: 3, wait: 10 do
execute "cd #{current_path}; RAILS_ENV=production bundle exec rake assets:precompile"
execute "cd '#{current_path}'; RAILS_ENV=production bundle exec rake db:migrate"
end
end
以下是错误:
INFO [96002080] Running cd /var/www/html/FingertipRails/current; RAILS_ENV=production bundle exec rake assets:precompile on 50.112.106.148
DEBUG [96002080] Command: cd /var/www/html/FingertipRails/current; RAILS_ENV=production bundle exec rake assets:precompile
DEBUG [96002080] bash: bundle: command not found
我已经尝试删除bundle exec
部分任务,但后来我收到错误,说明没有安装宝石(当我之前清楚地运行捆绑安装时)
有什么想法吗?