【发布时间】:2017-07-18 08:57:05
【问题描述】:
我在使用 capistrano 运行生产部署时遇到了问题。我们刚刚完成了一个包含大量数据库迁移的大型重构。
在部署期间,最糟糕的事情发生了,我的 ssh 连接断开了,而 cap 正在运行迁移。
我认为通过我们的负载均衡器进行 SSH 连接存在问题,但这不是重点。
我通过在服务器上运行屏幕、在此处迁移并随后进行部署,设法使迁移完全运行。
应用程序现在已经启动并且似乎工作正常,但我只是想知道如果连接中断,是否有人知道 capistrano 如何处理迁移?
我可以确定连接断开时执行的迁移完成了吗?
执行一半或执行两次迁移的可能性有多大?
我会假设 cap 将每个迁移包装在一个 db 事务中,如果发生错误会回滚,会是这种情况吗?
【问题讨论】:
标签: ruby-on-rails deployment capistrano