class Facts::Linux::Hypervisors::Vmware

Constants

FACT_NAME

Public Class Methods

new() click to toggle source
# File lib/facter/facts/linux/hypervisors/vmware.rb, line 9
def initialize
  @log = Facter::Log.new(self)
end

Public Instance Methods

call_the_resolver() click to toggle source
# File lib/facter/facts/linux/hypervisors/vmware.rb, line 13
def call_the_resolver
  if vmware?
    @log.debug('Vmware hypervisor detected')
    fact_value = {}

    version = Facter::Resolvers::DmiDecode.resolve(:vmware_version)
    fact_value[:version] = version if version && !version.empty?

    return Facter::ResolvedFact.new(FACT_NAME, fact_value)
  end

  @log.debug('No Vmware hypervisor detected.')
  []
end

Private Instance Methods

vmware?() click to toggle source
# File lib/facter/facts/linux/hypervisors/vmware.rb, line 30
def vmware?
  Facter::Resolvers::VirtWhat.resolve(:vm) == 'vmware' ||
    Facter::Resolvers::Linux::DmiBios.resolve(:product_name) == 'VMware' ||
    Facter::Resolvers::Lspci.resolve(:vm) == 'vmware' ||
    Facter::Resolvers::Linux::DmiBios.resolve(:sys_vendor) == 'VMware, Inc.'
end