【发布时间】:2012-07-05 07:59:32
【问题描述】:
我很喜欢在 Heroku 上使用 Rails,因此我可以调整 Heroku 应用程序的配置属性,而无需对 xyz.yml 进行更改并重新部署。
在我的 Rails 应用程序中完全取消 Yaml 配置文件并尽可能依赖将配置存储在 ENV 中会很好。这符合12-factor config 原则。
但是,从基于 Yaml 的配置管理切换到基于 Heroku/12 因子的配置管理时,需要权衡取舍。
- 虽然部署(qa、stage、prod、dev、demo、labs)的扩散确实会导致 Yaml 文件的扩散,但复制粘贴来创建新的配置文件非常容易。我看不到在 Heroku 中将配置文件从一个部署“复制”到另一个部署的方法。
- 在存储库中存储配置数据意味着,在 Heroku 的情况下,部署、配置和应用程序在一个操作中完成。如果我要将配置从 Yaml 文件中移到 ENV 变量中,我必须在部署后在单独的步骤中配置我的应用程序。
想听听在他们的私有应用程序中使用 12 因素样式配置的人的意见,以及他们如何跨大量部署管理大量配置变量。
- 如何快速配置新部署?
- 如果不是存储库,您将配置变量的权威来源保存在哪里?您如何在开发者之间分发它?
谢谢!
【问题讨论】:
标签: ruby-on-rails configuration heroku 12factor