【问题标题】:Capistrano bundle gems before sending to serverCapistrano 在发送到服务器之前捆绑 gem
【发布时间】:2011-08-24 07:35:34
【问题描述】:

我的服务器无法访问外部资源(宝石等),所以我手动运行

bundle package

然后上传代码并运行

bundle install --local

如何从 Capistrano 获得相同的行为?使用 Bundler 配方,尝试在服务器上安装包。而我愿意;

在构建机器上

  1. 从 SVN 结帐
  2. 运行捆绑包
  3. 压缩并上传工件

在应用服务器上

  1. 展开 Zip 工件
  2. 运行 bundle install --local
  3. 启动服务器

我试过了

after("deploy:update_code") do
    system("cd #{copy_cache} && bundle package")
end

但是运行结帐和上传,结帐之后似乎没有附加的地方,而是在压缩之前。

【问题讨论】:

    标签: ruby-on-rails-3 capistrano


    【解决方案1】:

    似乎最好的方法是,在开发工作站上运行捆绑包,然后将捆绑的 gem 提交到源代码管理,然后运行;

    bundle install --deployment
    

    【讨论】:

    • 我们有同样的问题,但我们不想将我们的 gem 添加到 git。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-03
    • 2011-11-13
    • 2011-05-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多