迁移Heroku管道推广数据

时间:2018-06-08 15:15:49

标签: ruby-on-rails heroku data-migration heroku-pipelines

我在Heroku上为我的rails应用程序使用管道。我有一个临时应用程序,然后升级到生产应用程序。我在部署到staging之前运行任何模式迁移,然后在我提升它时将slug移动到生产。

但现在我需要在下次部署时迁移一些用户数据,而我正在寻找一种方法来实现此功能,作为促销的一部分。促销完成后,我总是可以执行rake任务,但这似乎非常危险。理想情况下,代码应该在应用程序发布之前运行,如果出现任何问题则回滚。

我认为Release Phases是答案,但我不认为我可以在these considerations处访问那里的用户数据。

1 个答案:

答案 0 :(得分:0)

似乎我对Release Phases的保留是没有根据的。作为发布阶段的一部分,您可以很好地迁移数据。对于其他尝试同样事情的人,我使用了data_migrate红宝石宝石,效果非常好。然后我更新了我的Procfile以包含以下内容:

release: rails db:migrate:with_data

这会运行我使用gem创建的任何数据迁移,如果出现任何问题,则会中止发布。