У меня есть приложение на Rails 5, и я пытаюсь импортировать переменные среды в файл yaml, который затем можно импортировать в environment.rb
.Мой config/aws.yml
выглядит следующим образом:
S3_BUCKET: <%= ENV["S3_BUCKET"] %>
AWS_ACCESS_KEY_ID: <%= ENV["AWS_ACCESS_KEY_ID"] %>
AWS_SECRET_ACCESS_KEY: <%= ENV["AWS_SECRET_ACCESS_KEY"] %>
Тогда в моем environment.rb
у меня есть следующее:
require_relative 'application'
aws_file = File.join(Rails.root, 'config', 'aws.yml')
if File.exist?(aws_file)
YAML.safe_load(File.open(aws_file)).each do |k, v|
ENV[k.to_s] = v
end
end
при запуске моего rails c
вот что я получаю:
[1] pry(main)> ENV.fetch('S3_BUCKET')
=> "<%= ENV[\"S3_BUCKET\"] %>"
Как передать фактическую переменную среды, а не вытягивать имя переменной среды в виде строки?
РЕДАКТИРОВАТЬ: Добавление более актуальной информации
Мои учетные данныехранятся в моей elastic-beanstalk
конфигурации, и я пытаюсь загрузить значения из конфигурации в мой yaml
файл.