Module: Nero
- Extended by:
- Resolvable
- Defined in:
- lib/nero.rb,
lib/nero/util.rb,
lib/nero/railtie.rb,
lib/nero/version.rb
Overview
TODO fail on unknown tag TODO show missing env's at once TODO raise when missing arg(s) for tag
Defined Under Namespace
Modules: DigExt, Resolvable, Util Classes: BaseTag, Config, Configuration, EnvTag, Error, PathRootTag
Constant Summary collapse
- VERSION =
NOTE this is written upon release via: $ rake gem:build[version=0.3.0]
"0.6.0.pre"
Class Method Summary collapse
-
.config_for(file, root: nil, env: nil, **yaml_options) ⇒ Nero::Config (when the data is a Hash)
Convenience wrapper for Nero.load_file that works like
Rails.application.config_for
. - .configuration ⇒ Object
- .configure ⇒ Object
-
.load(yaml, root: nil, resolve: true, **yaml_options) ⇒ Nero::Config (when the data is a Hash)
Like
YAML.load
with extra options. -
.load_config(file, root: nil, env: nil, resolve: true) ⇒ Object
deprecated
Deprecated.
Use
load_file
orconfig_for
instead. -
.load_file(file, root: nil, resolve: true, **yaml_options) ⇒ Nero::Config (when the YAML-data is a Hash)
Like
YAML.load_file
. - .reset_configuration! ⇒ Object
Methods included from Resolvable
deep_resolve, resolve_nested!, try_resolve
Class Method Details
.config_for(file, root: nil, env: nil, **yaml_options) ⇒ Nero::Config (when the data is a Hash)
Convenience wrapper for load_file that works like Rails.application.config_for
.
The file-argument is expanded like so (configuration.config_dir / "#{file}.yml").expand_path
.
492 493 494 495 496 |
# File 'lib/nero.rb', line 492 def self.config_for(file, root: nil, env: nil, **) root ||= env load_file(resolve_file(file), root:, **) end |
.configuration ⇒ Object
120 121 122 |
# File 'lib/nero.rb', line 120 def self.configuration @configuration ||= Configuration.new end |
.configure ⇒ Object
131 132 133 134 135 |
# File 'lib/nero.rb', line 131 def self.configure yield configuration if block_given? ensure end |
.load(yaml, root: nil, resolve: true, **yaml_options) ⇒ Nero::Config (when the data is a Hash)
Like YAML.load
with extra options.
466 467 468 |
# File 'lib/nero.rb', line 466 def self.load(yaml, root: nil, resolve: true, **) process_yaml(yaml_load(yaml, ()), root:, resolve:) end |
.load_config(file, root: nil, env: nil, resolve: true) ⇒ Object
Use load_file
or config_for
instead.
499 500 501 502 503 504 505 506 507 508 509 510 511 |
# File 'lib/nero.rb', line 499 def self.load_config(file, root: nil, env: nil, resolve: true) warn "[DEPRECATION] `load_config` is deprecated. Use `load_file` or `config_for` instead." root ||= env config_file = resolve_file(file) if config_file.exist? process_yaml(yaml_load_file(config_file, ), root:, config_file:, resolve:) else raise "Can't find file #{config_file}" end end |
.load_file(file, root: nil, resolve: true, **yaml_options) ⇒ Nero::Config (when the YAML-data is a Hash)
Like YAML.load_file
. See load for options.
472 473 474 475 |
# File 'lib/nero.rb', line 472 def self.load_file(file, root: nil, resolve: true, **) config_file = (file.is_a?(Pathname) ? file : Pathname.new(file)). process_yaml(yaml_load_file(config_file, ()), root:, config_file:, resolve:) end |
.reset_configuration! ⇒ Object
419 420 421 422 423 424 425 426 427 428 |
# File 'lib/nero.rb', line 419 def self.reset_configuration! @configuration = nil configure do |config| config.config_dir = Pathname.new("config"). end end |