Undistraction
Undistraction

Reputation: 43579

Set Multiple Environmental Variables On Invocation of Rake Task

I can invoke a Rake task and set a single environmental variable like this:

$ ONE=1 rake temp:both

But how do I set two environmental variables?

This doesn't work:

 $ ONE=1 TWO=2 rake temp:both 

This works, but is confusing to read:

$ ONE=1 rake temp:both TWO=2 

How can I pass more than one env before the call to rake?

Upvotes: 6

Views: 5826

Answers (1)

steakchaser
steakchaser

Reputation: 5239

Agree with @Ernest; it should work. Here's a sample...

Sample rake task to echo vars:

task :echo_env do
  puts "VAR1: #{ENV['VAR1']}"
  puts "VAR2: #{ENV['VAR2']}"
end

Execute task:

VAR1=first VAR2=second bundle exec rake echo_env

Output:

VAR1: first
VAR2: second

Upvotes: 4

Related Questions