Rake TestTask экспортирует переменную среды вне задачи - PullRequest
0 голосов
/ 21 ноября 2018

Определение переменной среды в стандартном Задаче Rake применяет только переменную для выполнения задачи.

То же самое в Rake TestTask экспортируетПеременная среды для остальных задач среды.

Это не влияет на значение ENV["ENVIRONMENT"] для других задач:

task :test do
  ENV["ENVIRONMENT"] = "test"
  puts "other tasks will not have the env"
end

Изменение ENV["ENVIRONMENT"] для всех задач (даже когда не запускается):

Rake::TestTask.new(:random_task) do |t|
  ENV["ENVIRONMENT"] = "test"
  puts "all other tasks have this env set even if this task is not run"
end

Как я могу применить обычное поведение Задача к TestTask или это так по замыслу?

Я вижу это такway:

Каждая задача наследует стандартную среду, но выполняется в своей собственной оболочке, но TestTask, похоже, выполняется в основной среде, от которой наследуются все другие задачи.Это как если бы ENV["ENVIRONMENT"] было определено глобально в Rakefile.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...