Class: Facts::Linux::Virtual

Inherits:
Object
  • Object
show all
Defined in:
lib/facts/linux/virtual.rb

Constant Summary collapse

FACT_NAME =
'virtual'

Instance Method Summary collapse

Instance Method Details

#call_the_resolverObject



8
9
10
11
12
# File 'lib/facts/linux/virtual.rb', line 8

def call_the_resolver
  fact_value = check_docker_lxc || check_gce || retrieve_from_virt_what || check_vmware

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

#check_docker_lxcObject



19
20
21
# File 'lib/facts/linux/virtual.rb', line 19

def check_docker_lxc
  Facter::Resolvers::DockerLxc.resolve(:vm)
end

#check_gceObject



14
15
16
17
# File 'lib/facts/linux/virtual.rb', line 14

def check_gce
  bios_vendor = Facter::Resolvers::Linux::DmiBios.resolve(:bios_vendor)
  'gce' if bios_vendor&.include?('Google')
end

#check_vmwareObject



23
24
25
# File 'lib/facts/linux/virtual.rb', line 23

def check_vmware
  Facter::Resolvers::Vmware.resolve(:vm)
end

#retrieve_from_virt_whatObject



27
28
29
# File 'lib/facts/linux/virtual.rb', line 27

def retrieve_from_virt_what
  Facter::Resolvers::VirtWhat.resolve(:vm)
end