module Dhall::Rails::Application
Public Class Methods
included(*)
click to toggle source
# File lib/dhall/rails/application.rb, line 6 def self.included(*) ::I18n.backend = I18n::Simple.new ::I18n.load_path += Dir[ File.expand_path("config/locales") + "/**/*.dhall" ] end
Public Instance Methods
config()
click to toggle source
# File lib/dhall/rails/application.rb, line 26 def config @config ||= Configuration.new( self.class.find_root(self.class.called_from) ) end
config_for(path, env: ::Rails.env)
click to toggle source
Calls superclass method
# File lib/dhall/rails/application.rb, line 39 def config_for(path, env: ::Rails.env) unless path.is_a?(Pathname) path = config.pathname("config").join("#{path}.dhall") end return super if path.extname == ".yml" unless path.exist? raise "Could not load configuration. No such file - #{path}" end decoded = Dhall::Rails.load_decoded(path, transform_keys: :to_sym) ActiveSupport::OrderedOptions.new.update(decoded.fetch(env.to_sym, {})) end
credentials()
click to toggle source
# File lib/dhall/rails/application.rb, line 32 def credentials @credentials ||= encrypted( config.credentials.content_path, key_path: config.credentials.key_path ) end
encrypted( path, key_path: "config/master.key", env_key: "RAILS_MASTER_KEY" )
click to toggle source
# File lib/dhall/rails/application.rb, line 13 def encrypted( path, key_path: "config/master.key", env_key: "RAILS_MASTER_KEY" ) EncryptedConfiguration.new( config_path: ::Rails.root.join(path), key_path: ::Rails.root.join(key_path), env_key: env_key, raise_if_missing_key: config.require_master_key ) end