Sha256: a994cc0e8e38fa44eaaf26b41d8c1a98cddec4323153de49a1b0452f07b08eaa
Contents?: true
Size: 1.17 KB
Versions: 2
Compression:
Stored size: 1.17 KB
Contents
# frozen_string_literal: true module Facter module Resolvers module Solaris class DmiSparc < BaseResolver @semaphore = Mutex.new @fact_list ||= {} class << self private def post_resolve(fact_name) @fact_list.fetch(fact_name) { read_facts(fact_name) } end def read_facts(fact_name) output = exec_prtdiag return unless output matches = output.match(/System Configuration:\s+(.+?)\s+sun\d+\S+\s+(.+)/)&.captures @fact_list[:manufacturer] = matches[0]&.strip @fact_list[:product_name] = matches[1]&.strip sneep = exec_sneep&.strip @fact_list[:serial_number] = sneep @fact_list[fact_name] end def exec_prtdiag return unless File.executable?('/usr/sbin/prtdiag') Facter::Core::Execution.execute('/usr/sbin/prtdiag', logger: log) end def exec_sneep return unless File.executable?('/usr/sbin/sneep') Facter::Core::Execution.execute('/usr/sbin/sneep', logger: log) end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
facter-4.0.36 | lib/facter/resolvers/solaris/dmi_sparc.rb |
facter-4.0.35 | lib/facter/resolvers/solaris/dmi_sparc.rb |