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’



173
174
175
176
177
178
179
180
181
182
183
184
185
# File 'lib/pdk/config/namespace.rb', line 173

def resolve(filter = nil)
  resolved = {}
  # Resolve the settings
  settings.each_value 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.each_value { |mount| resolved.merge!(mount.resolve(filter)) }
  resolved
end