Запуск Thor в рабочей среде Rails - PullRequest
4 голосов
/ 25 января 2011

Я хочу выполнить какое-то задание на рельсах 3 в производстве, но я не знаю, как его настроить.Следующий код не работает

class CheckData < Thor
  require File.expand_path('config/environment.rb')
end

1 Ответ

6 голосов
/ 08 февраля 2011

Установка переменной среды RAILS_ENV в 'production' прямо над оператором require должна работать.Я использовал условное присвоение здесь, чтобы по умолчанию среда была «рабочей», если переменная среды не установлена ​​заранее.

class CheckData < Thor
  ENV['RAILS_ENV'] ||= 'production'
  require File.expand_path('config/environment.rb')
end

Если вы запускаете ее как задачу Thor из командной строки, вы можете затемустановите переменную среды перед запуском и, таким образом, переопределите присвоение по умолчанию:

export RAILS_ENV=test; thor check_data

См. Настройка приложений Rails Настройки среды Rails из RailsGuides для получения дополнительных переменных среды.

...