Столкнулся с проблемой, когда при обновлении версий на production сервере код и миграции накатываются в разных транзакциях. В итоге приходит большое количество ошибок, так как модели еще не проапдейтились. Решил написать capistrano таск, который бы вводил сайт в режим "технические работы" и отдавал статическую страничку с чем-то типа "тех обслуживание сайта".
Выглядеть это должно так:
cap maintenance:start
cap maintenance:stop
Причем необходимо сделать зависимости, к примеру если происходит запуск cap deploy после определенного периода времени, автоматически включать статус maintenance, а также выключать его по прошествии определенного времени.
Как это все реализовать еще обсуждается.