【发布时间】:2016-06-17 19:55:33
【问题描述】:
我有一个 Rails 应用程序,它在测试成功后和将代码部署到 Heroku 之前在 rake 任务中运行数据库迁移。
我使用CodeShip 运行测试,运行迁移,最后部署到heroku。
但是,我遇到了 Heroku 的新 Pipelines 功能的问题。
将我的应用程序版本从一个环境升级到另一个环境后,只有 application slug 被复制到新环境。 git 中没有合并或更新任何分支,也没有 codeship 构建触发器。
即使是 heroku 构建历史也只显示了一个没有关联构建日志的升级条目。这是有道理的,因为它只是复制 slug,而不是构建新的 slug。
所以我的问题是,当我将我的应用程序提升到新环境时,我无法找到将自定义脚本挂接到该事件以执行数据库迁移的任何方法。
主要问题
是否有我无法找到的支持?如果没有,作品中是否有支持此功能的功能?
功能建议
理想情况下,我希望升级功能通过合并底层 git 分支来工作,这样代码仍然可以启动,在新环境中再次运行所有测试和迁移,然后最终在下一个环境中触发构建。 这将要求管道中的每个环境都绑定到特定的分支,而不是仅仅通过提交哈希进行提升,但我认为这不会有问题。
本质上,我希望提升按钮能够做我们开发人员在手动提升应用程序版本时经常做的事情,合并到与该环境关联的 git 分支,并让我们的 CI 服务器的 git 挂钩从那里启动它。
【问题讨论】:
-
我知道你很久以前就问过这个问题,但我今天遇到同样的问题时才发现这个问题:devcenter.heroku.com/articles/…。让我希望他们能修复它的是它写着“不是,现在不是”的部分。