class Facter::Resolvers::LsbRelease
Private Class Methods
build_fact_list(info)
click to toggle source
# File lib/facter/resolvers/lsb_release.rb, line 37 def build_fact_list(info) release_info = info.delete("\t").split("\n").map { |e| e.split(':', 2) } result = Hash[*release_info.flatten] result.each { |k, v| @fact_list[k.downcase.gsub(/\s/, '_').to_sym] = v } @fact_list[:identifier] = @fact_list[:distributor_id] end
lsb_release_installed?()
click to toggle source
# File lib/facter/resolvers/lsb_release.rb, line 27 def lsb_release_installed? output = Facter::Core::Execution.execute('which lsb_release', logger: log) @fact_list[:lsb_release_installed] = !output.empty? end
post_resolve(fact_name, _options)
click to toggle source
# File lib/facter/resolvers/lsb_release.rb, line 17 def post_resolve(fact_name, _options) @fact_list.fetch(fact_name) { retrieve_facts(fact_name) } end
read_lsb_release_file()
click to toggle source
# File lib/facter/resolvers/lsb_release.rb, line 32 def read_lsb_release_file output = Facter::Core::Execution.execute('lsb_release -a', logger: log) build_fact_list(output) end
retrieve_facts(fact_name)
click to toggle source
# File lib/facter/resolvers/lsb_release.rb, line 21 def retrieve_facts(fact_name) lsb_release_installed? if @fact_list[:lsb_release_installed].nil? read_lsb_release_file if @fact_list[:lsb_release_installed] @fact_list[fact_name] end