class Facts::Solaris::DhcpServers

Constants

FACT_NAME

Public Instance Methods

call_the_resolver() click to toggle source
# File lib/facter/facts/solaris/dhcp_servers.rb, line 7
def call_the_resolver
  fact_value = construct_addresses_hash
  fact_value = !fact_value || fact_value.empty? ? nil : fact_value
  Facter::ResolvedFact.new(FACT_NAME, fact_value, :legacy)
end

Private Instance Methods

construct_addresses_hash() click to toggle source
# File lib/facter/facts/solaris/dhcp_servers.rb, line 15
def construct_addresses_hash
  primary_dhcp = Facter::Resolvers::Solaris::Networking.resolve(:dhcp)
  interfaces = Facter::Resolvers::Solaris::Networking.resolve(:interfaces)
  return unless interfaces

  servers = { system: primary_dhcp }
  interfaces&.each { |interface_name, info| servers[interface_name] = info[:dhcp] if info[:dhcp] }
  servers
end