Method: PDK::Config::Namespace#resolve

Defined in:
lib/pdk/config/namespace.rb

#resolve(filter = nil) ⇒ Hash{String => Object}

Resolves all filtered settings, including child namespaces, fully namespaced and filling in default values.

Parameters:

  • filter (String) (defaults to: nil)

    Only resolve setting names which match the filter. See #be_resolved? for matching rules

Returns:

  • (Hash{String => Object})

    All resolved settings for example => ‘johndoe’



164
165
166
167
168
169
170
171
172
173
174
175
176
# File 'lib/pdk/config/namespace.rb', line 164

def resolve(filter = nil)
  resolved = {}
  # Resolve the settings
  settings.values.each do |setting|
    setting_name = setting.qualified_name
    if be_resolved?(setting_name, filter)
      resolved[setting_name] = setting.value.nil? ? setting.default : setting.value
    end
  end
  # Resolve the mounts
  @mounts.values.each { |mount| resolved.merge!(mount.resolve(filter)) }
  resolved
end