如何在capistrano部署中管理捆绑的gem?

时间:2011-01-26 19:18:02

标签: ruby-on-rails capistrano

目前,我刚刚运行以下内容:

在'deploy:update_code'之后,'deploy:bundle'

namespace :deploy do
  task :bundle do
    run "cd #{release_path} && bundle install --deployment --without development test staging"
  end
end

现在这样可以正常工作,但捆绑包最终每次都会将所有宝石安装到vendor/gems。虽然我理解将gems隔离到每个版本的优点(与使用共享文件夹相反,哪些(?)可能导致回滚时出现错误等),当然有一种更好的方法可以做到这一点,而不是部署和节省磁盘空间的时间很长。

1 个答案:

答案 0 :(得分:9)

捆绑1.0发布后情况发生了变化

您无需从部署创建自定义任务。

只需使用 require 'bundler/capistrano'

请查看此http://blog.josephholsten.com/2010/09/deploying-with-bundler-and-capistrano/了解详情