簡體   English   中英

在Rake任務中使用環境變量

[英]Use environment variables in Rake task

task :some_task, :environment do |t, args|
  puts Rails.env #=> development, production, etc
  puts ENV #=> {}
end

我設置了一些環境變量(通過本地.env或通過Herokusan的Heroku Config),例如要使用的AWS存儲桶,我想在rake任務中引用它們,但是ENV是一個空哈希。 我知道與環境有關的事情由於:environment任務的依賴而完成,並且Rails.env具有值,但是我不清楚細節。

那么,如何在Rake任務中使用ENV

有兩種好的方法:

使用Heroku的“領班”工具。 將所有環境變量放入.env

VAR=value

並運行foreman run rake some_task

或者(並且,我建議采用這種方式),使用“ Figaro” gem。 將您的var放入config/application.yml

VAR: value

就是這樣; rake some_task

我建議使用后者,僅是因為rake figaro:heroku會按照application.yml的指定將您的環境向上推

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM