Module: ConfigurationManager
- Defined in:
- lib/configuration_manager.rb,
lib/configuration_manager/merger.rb,
lib/configuration_manager/railtie.rb,
lib/configuration_manager/version.rb,
lib/configuration_manager/configuration.rb
Defined Under Namespace
Classes: Configuration, Merger, Railtie
Constant Summary
collapse
- VERSION =
"0.2.1"
Class Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Class Attribute Details
.configuration ⇒ Object
Returns the value of attribute configuration.
6
7
8
|
# File 'lib/configuration_manager/configuration.rb', line 6
def configuration
@configuration
end
|
Class Method Details
8
9
10
11
|
# File 'lib/configuration_manager/configuration.rb', line 8
def configure
self.configuration ||= Configuration.new
yield(configuration) if block_given?
end
|
Instance Method Details
#check_configuration_freshness ⇒ Object
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/configuration_manager.rb', line 15
def check_configuration_freshness
current = YAML.load_file("#{Rails.root}/config/application.yml")
generated = Merger.config(AppConfig.current_theme)
differences = differing_configs(current, generated)
if differences.any? && !AppConfig['allow_custom_configuration']
raise "Current application.yml does not match the default for #{AppConfig.current_theme}. " +
"Either run `rake config:update` or set allow_custom_configuration to true" +
" in your application.yml. Differences: #{differences}"
end
end
|
#reload_config ⇒ Object
8
9
10
11
12
13
|
# File 'lib/configuration_manager.rb', line 8
def reload_config
AppConfig.reload!
rescue Errno::ENOENT
raise "Missing the application.yml configuration file. Try loading with " +
"`cp config/application.cx.dev.yml config/application.yml`"
end
|