Есть ли переменная среды, которую я мог бы использовать в своих инициализаторах рельсов, чтобы определить, выполняется ли задача rake? Нравится -- rake db:migrate db:seed
У меня есть куча инициализаторов, которые можно пропустить для большинства задач rake:
- Не загружайте пружину (это проект jruby)
- Не загружайте наблюдатель аудита, который прерывает миграцию
Обновлять:
Я, вероятно, пожалею об этом позже, но, похоже, работает следующее:
В моем application.rb добавлено следующее:
config.is_rake = (File.basename($0) == 'rake')
Затем я проверяю значение позже
config.active_record.observers = :audit_observer unless config.is_rake
В другом месте моего весеннего инициализатора
SPRING_CONTEXT = org.springframework.context.support.FileSystemXmlApplicationContext.new(SPRING_XML_CONFIG_FILES) unless Rails.application.config.is_rake
На основе ответа здесь