如何将环境变量传递给从另一个Rake任务调用的Rake任务?

Und*_*ion 14 ruby rake ruby-on-rails

我从另一个Rake任务调用了三个Rake任务.第一个Rake任务要求在执行环境变量之前设置它.

以下工作,但这意味着我丢失了关键任务的所有输出:

namespace :deploy do

  task :staging => :environment do
    `EXAMPLE=something rake db:rebuild`
    Rake::Task["rake envs:push:staging"].invoke
    Rake::Task["rake app:push:staging"].invoke
  end

end
Run Code Online (Sandbox Code Playgroud)

如何使用环境变量调用第一个任务并将其输出显示到终端?

bri*_*ver 21

ENV['EXAMPLE'] = 'something'
Rake::Task['db:rebuild'].invoke
Run Code Online (Sandbox Code Playgroud)

  • @PedroMorteRolo,确实如此. (2认同)