2016-03-15 1 views
0

Я знаю, как сделать резервную копию моего db, используя скрипты capistrano.capistrano backup db до миграции

before 'deploy:migration', 'db:backup' 

Однако резервное копирование базы данных занимает много времени, и я действительно только хочу, чтобы это сделать, когда развертывание включает в себя миграцию. В противном случае я скорее сделаю развертывание без резервного копирования.

ответ

1

Вы можете использовать ActiveRecord::Migrator.needs_migration?, чтобы узнать, есть ли ожидаемая миграция или нет. Тем не менее, я думаю, что вы не можете поставить эту проверку непосредственно в задаче capistrano.

Я хотел бы создать рек задачу в, что бы запустить резервное копирование БД, но только если есть ожидающие миграции (т.е. если needs_migration? является true).

Тогда я бы создал задачу capistrano, которая просто вызовет задачу рейка перед задачей deploy:migration во время развертывания.

 Смежные вопросы

  • Нет связанных вопросов^_^