【问题标题】:exclude files in gems from heroku slugs (using .slugignore, heroku)从 heroku slugs 中排除 gems 中的文件(使用 .slugignore、heroku)
【发布时间】:2011-12-23 09:47:16
【问题描述】:

我正在使用的一个 rails 3.0.x 项目使用了一个 gem,其中包含 Heroku 部署不需要的大量测试数据。我想把它从 heroku slug 中排除,因为它给 slug 增加了几十兆(并且已经使我们多次超过 100mb 的大小限制,我们的 slug 由于其他原因很大。)

我已经尝试使用 .slugignore 机制来执行此操作,但我找不到一种方法让它排除 gems 中的文件而不是应用程序中的文件。这是一个运行在竹堆栈上的 rails 3.0.x 应用程序,但如果这些版本中有解决方法/程序,我会升级到 rails 3.1 和/或雪松堆栈。

关于解决此问题的其他建议(不是“让巨大的宝石变小”)也很棒,非常受欢迎。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 heroku assets slug


    【解决方案1】:

    在 cedar 堆栈上,gem 安装到您的 vendor 文件夹中(实际路径类似于 vendor/bundle/ruby/1.9.1/gems/),所以我相信您可以忽略所需的子路径,尽管我没有尝试过。

    【讨论】:

    • 那行不通。 .slugignore 似乎不是递归的。太糟糕了.. gem 中有很多不必要的东西在 slug 中不需要。
    【解决方案2】:

    在一般情况下,这将不起作用,因为在安装 gem 文件之前会删除 .slugignore 匹配的文件。请参阅以下 heroku 部署输出:

    -----> Deleting 2 files matching .slugignore patterns.
    -----> Ruby/Rails app detected
    -----> Installing dependencies using Bundler version 1.3.0.pre.5
           Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
           Using rake (10.0.3)
           Using Platform (0.4.0)
           Using open4 (1.3.0)
           ...
    

    【讨论】:

      猜你喜欢
      • 2015-01-27
      • 2021-01-20
      • 1970-01-01
      • 1970-01-01
      • 2013-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-17
      相关资源
      最近更新 更多