class Facter::Resolvers::Solaris::Ldom
Constants
- VIRTINFO_MAPPING
Private Class Methods
Source
# File lib/facter/resolvers/solaris/ldom.rb, line 38 def call_virtinfo(fact_name) virtinfo_output = Facter::Core::Execution.execute('/usr/sbin/virtinfo -a -p', logger: log) return if virtinfo_output.empty? output_hash = parse_output(virtinfo_output) return if output_hash.empty? VIRTINFO_MAPPING.each do |key, value| @fact_list[key] = output_hash.dig(*value)&.strip end @fact_list[fact_name] end
Source
# File lib/facter/resolvers/solaris/ldom.rb, line 52 def parse_output(output) result = {} output.each_line do |line| next unless line.include? 'DOMAIN' x = line.split('|') result[x.shift] = x.map { |f| f.split('=') }.to_h end result end
Source
# File lib/facter/resolvers/solaris/ldom.rb, line 34 def post_resolve(fact_name, _options) @fact_list.fetch(fact_name) { call_virtinfo(fact_name) } end