【发布时间】:2014-10-30 09:36:09
【问题描述】:
是否有一些库或工具允许使用外部文件配置 Rails 应用程序?
我希望数据库配置(默认在 config/database.yml 中)和应用程序配置(在 config/environments/*.rb 中的特定环境文件中配置)在文件中(最好是 yaml)不包含项目。
我知道这不是标准的做事方式,但有一些好处:
- 文件可以存在于版本控制中的单独存储库中
- 您可以对此存储库进行不同的访问控制(您可以隐藏生产配置)
- 配置文件可以单独部署
- 可以在机器上手动更改,重新部署应用时不会被覆盖
- 您不必为每个部署环境使用不同的 rails 环境,但可以在特定机器上进行更改。
- 您可以在应用程序之间共享配置
更好的解决方案是进行部分外部配置 - 这样您仍然可以在应用程序中进行基本配置,但覆盖其中的一部分。
如果您在应用程序中复制外部配置文件,则可以这样做。这可以在加载 rails 之前在 config/application.rb 的开头完成,但它看起来像一个 hack,并且难以维护。是否有一些实用的解决方案可以实现这一点?
【问题讨论】:
标签: ruby-on-rails ruby configuration