class Facter::Resolvers::Openbsd::Virtual

Constants

CTL_HW
HW_PRODUCT
VM_GUEST_SYSCTL_NAMES

:model

Private Class Methods

post_resolve(fact_name, _options) click to toggle source
# File lib/facter/resolvers/openbsd/virtual.rb, line 22
def post_resolve(fact_name, _options)
  @fact_list.fetch(fact_name) { read_facts(fact_name) }
end
read_facts(fact_name) click to toggle source
# File lib/facter/resolvers/openbsd/virtual.rb, line 29
def read_facts(fact_name)
  require 'facter/resolvers/bsd/ffi/ffi_helper'

  vm = Facter::Bsd::FfiHelper.sysctl(:string, [CTL_HW, HW_PRODUCT])
  vm = if VM_GUEST_SYSCTL_NAMES.key?(vm)
         VM_GUEST_SYSCTL_NAMES[vm]
       else
         'physical'
       end
  @fact_list[:vm] = vm
  @fact_list[fact_name]
end