class Facts::Solaris::Zones
Constants
- ALIASES
- FACT_NAME
Public Instance Methods
call_the_resolver()
click to toggle source
# File lib/facter/facts/solaris/zones.rb, line 18 def call_the_resolver resolved_facts = [] zones = {} results = Facter::Resolvers::Solaris::Zone.resolve(:zone) return Facter::ResolvedFact.new(FACT_NAME, nil) unless results results&.each do |result| zones.merge!(parse_result(result)) resolved_facts << create_legacy_zone_facts(result) end resolved_facts << Facter::ResolvedFact.new('solaris_zones.zones', zones) resolved_facts << Facter::ResolvedFact.new('zones', results.count, :legacy) resolved_facts.flatten end
Private Instance Methods
create_legacy_zone_facts(zone)
click to toggle source
# File lib/facter/facts/solaris/zones.rb, line 50 def create_legacy_zone_facts(zone) legacy_facts = [] %w[brand iptype name uuid id path status].each do |key| legacy_facts << Facter::ResolvedFact.new("zone_#{zone[:name]}_#{key}", zone[key.to_sym], :legacy) end legacy_facts end
parse_result(result)
click to toggle source
# File lib/facter/facts/solaris/zones.rb, line 38 def parse_result(result) { result[:name].to_sym => { brand: result[:brand], id: result[:id], ip_type: result[:iptype], path: result[:path], status: result[:status] } } end