Method: Dacs::AppConfig#initialize
- Defined in:
- lib/dacs/app_config.rb
#initialize ⇒ AppConfig
Returns a new instance of AppConfig.
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
# File 'lib/dacs/app_config.rb', line 99 def initialize raise "You must initialize with Dacs::AppConfig.init!()" unless @@options @app_name = @@options[:app_name] @config_path = @@options[:config_path] @logger = @@options[:logger] @environment = @@options[:environment] @defaults = self.class.schema.defaults @system = @@options.fetch(:system){Kernel} find_or_create_config_file! defaults_source = DefaultSource.new(@defaults) file_source = FileSource.new(config_path, @environment) env_source = EnvironmentSource.new(env_var_prefix) sources = [] sources << env_source sources << file_source if file_source.readable? sources << defaults_source load_values!(self.class.schema, *sources) verify_no_missing_required_values! end |