如何设置多个轨道环境



我正在尝试设置一个新的rails项目,以具有三个环境:暂存,测试和生产。我想在 Heroku 上托管,并使用 GitHub 进行源代码控制。我想要的基本工作流程是:

1) 在当地环境中开发

2)推送到 GitHub 上的暂存分支,在暂存上启动构建服务器。

3) 将暂存合并到 GitHub 上的测试中,首先启动我的测试,如果成功,则在测试服务器上构建。

4) 将测试合并到生产中,启动生产服务器的构建。

我还拥有我想使用的域,我希望服务器反映这一点。因此,我希望我的生产应用程序处于 example.com 状态,而我的测试服务器将处于 test.example.com 状态,而我的暂存服务器将处于 staging.example.com 状态。

有谁知道我如何在高水平上设置这一切?我知道这是很多东西,可能有很多方法可以做到这一点。

我正在做类似的事情。我的工作流程是(大致):

  1. 在本地开发
  2. 在本地(单元、集成)上测试
  3. git push to stageing on Heroku (staging-example.herokuapp.com)
  4. 暂存测试(仅限集成)
  5. git 推送到 GitHub,触发自动部署到 Heroku 上的生产环境 (example.com)

几点注意事项:

  • 我不确定 Heroku 是否支持您的问题所暗示的环境之间的那种"合并"。从理论上讲,我相信这就是管道的用途。但是,我相信你已经在这里读到过,管道可能无法很好地与 RoR 配合使用。

  • 我将我的应用程序设置为 https。我不想为我的暂存应用程序处理 https 的设置,所以我只使用免费且简单的 app-name.herokuapp.com。

如果我想到其他任何事情,我会补充。

最新更新