unk*_*own 3 git deployment heroku
我正在使用连接到 GitHub 的 Heroku Pipelines。
我有三个不同的环境Reviews:-(一旦我的 CI 测试成功Staging,我的所有拉取请求都会自动部署到那里)- (我的主分支部署到的地方)- Production(我的生产环境)
Review当我拉和合并分支时,我的应用程序被创建和销毁。我的Staging和Production应用程序总是一样的。Staging当我的主分支更新时更新,然后我可以手动决定将该代码提升到Production.
这一切都很棒!除非我的app.json文件有问题。
在开发新分支时,我经常使用新的 heroku 插件,即 Redis db 或新的监控工具。我通过更新我的app.json文件来做到这一点。例子:
"addons": [
"logentries:le_tryit",
"newrelic:wayne",
{
"plan": "mongolab:sandbox",
"as": "MONGODB_URI"
},
{
"plan": "heroku-redis:hobby-dev",
"as": "REDIS_SESSIONS_URI"
}
]
Run Code Online (Sandbox Code Playgroud)
创建拉取请求后,就会创建一个应用程序Reviews,我可以看到我的新插件。不幸的是,当我将我的分支与 master 合并时,app.json似乎不会在我的Staging环境中再次运行(随后在我的Production环境中)。
有没有办法app.json在现有的 heroku 应用程序中重新运行清单?每次新部署都可以自动化吗?
如果不是,有什么原因吗?
谢谢!
没有办法做你所要求的。该app.json只创建一个新的Heroku应用时解析,而不是在重新部署之一。原因是它可能对生产应用程序造成不必要的副作用。
EG:如果您从app.json文件中删除一行并将其推送到现有的 Heroku 应用程序,会发生什么?Heroku 是否应该删除您的插件(可能会破坏大量数据?)
相反,您应该做的是:当您削减生产版本时,如果您需要使用新插件或更改它们,请通过 CLI 手动进行。
例如:
$ heroku addons:create heroku-redis
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1587 次 |
| 最近记录: |