Подтвердить что ты не робот

Rails: Выполняется сразу несколько задач грабли?

Любящие рельсы, но все равно борясь с тем, сколько времени требуется для запуска задач из командной строки.

Мне интересно, возможно ли объединить несколько задач rake без перезагрузки среды каждый раз. Например, если я запустил

rails generate rspec:install && rails generate model test_model title:string && rake db:migrate

он потратит 10 секунд на загрузку рельсов, чтобы запустить rspec install, а затем еще десять секунд, чтобы загрузить среду для генерации модели, а затем другую для миграции. Есть ли способ сохранить ту же среду открытой для всех трех команд?

4b9b3361

Ответ 1

Взгляните на rails-sh gem - он загружает среду Rails, а затем представляет интерфейс командной строки, поэтому вы можете запустить свою команду внутри него. Есть ограничения при использовании (я не думаю, что вы можете изменить RAILS_ENV), но для вашего прецедента это должно быть идеально.

Если ваши команды являются просто задачами rake, вы можете использовать пробелы для их разделения, например:

rake db:migrate && rake db:test:clone_structure

станет

rake db:migrate db:test:clone_structure