Переменные среды локально и Heroku
У меня есть приложение sinatra, в котором у меня есть файл yml для установки переменных среды, я вызываю их с помощью этого метода
module MyConfig
def config
environment, = ENV["RACK_ENV"] || "development"
YAML.load_file("./config/config.yml")[environment]
end
end
поэтому, когда я хочу использовать переменную, я делаю это, например,
aws_access_key_id = config['aws_access_key']
У меня есть файл .gitignore, который игнорирует config.yml при отправке, например, на github. Так что, когда я нажимаю на heroku, эти переменные окружения не будут доступны?
Так что это оставляет меня с помощью Heroku способ установки их так
heroku config:add aws_access_key= myapikey
но героку доступ к этим как
aws_access_key_id = ENV['aws_access_key']
Как я могу настроить свою среду разработки для использования метода config и heroku использовать ENV, я смотрю на это неправильно? или мой метод конфигурации делает это для меня?
Любая помощь приветствуется
RAKEFILE
require 'active_support/core_ext'
require './config/config.rb'
require 'bundler/setup'
Bundler.require(:default)
include MyConfig
AssetSync.configure do |con|
con.fog_provider = 'AWS'
con.fog_region = 'eu-west-1'
con.fog_directory = config['fog_directory']
con.aws_access_key_id = config['aws_access_key']
con.aws_secret_access_key = config['aws_secret_key']
con.prefix = "assets"
con.public_path = Pathname("./public")
end
namespace :assets do
desc "Precompile assets"
task :precompile do
AssetSync.sync
end
end