(我没有使用 Rails)
我有一个 rake 任务,它设置传入的环境,如:
rake some:task ENV=test
我的任务是:
desc "environment"
task :environment do
env = ENV['ENV'] || 'development'
end
现在,如果我有这样的任务:
desc "t1"
task :t1 [:environment] do
puts env
end
它没有说 env 不知道,这是为什么呢?
我认为 ruby 的动态特性会这样做:
在运行环境任务时,它会创建环境变量,并且由于它是一个依赖项,因此该变量将在我的其他任务的范围内。
我怎样才能拥有它,使其在范围内?
注意:以防万一,我的一些任务位于不同的 .rake 文件中,只是提及是否有任何改变。