Sha256: b81ebd84b570655641d53e2a8fc962009439e83b4fdb2a07e146f7282b5f30f7
Contents?: true
Size: 1.05 KB
Versions: 3
Compression:
Stored size: 1.05 KB
Contents
# frozen_string_literal: true module Facter module Resolvers module Freebsd class Virtual < BaseResolver init_resolver class << self #:model VM_GUEST_SYSCTL_NAMES = { 'hv' => 'hyperv', 'microsoft' => 'hyperv', 'oracle' => 'virtualbox', 'xen' => 'xenu', 'none' => nil }.freeze private def post_resolve(fact_name) @fact_list.fetch(fact_name) { read_facts(fact_name) } end def read_facts(fact_name) require_relative 'ffi/ffi_helper' if Facter::Freebsd::FfiHelper.sysctl_by_name(:long, 'security.jail.jailed').zero? vm = Facter::Freebsd::FfiHelper.sysctl_by_name(:string, 'kern.vm_guest') vm = VM_GUEST_SYSCTL_NAMES[vm] if VM_GUEST_SYSCTL_NAMES.key?(vm) @fact_list[:vm] = vm else @fact_list[:vm] = 'jail' end @fact_list[fact_name] end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
facter-4.0.49 | lib/facter/resolvers/freebsd/virtual.rb |
facter-4.0.48 | lib/facter/resolvers/freebsd/virtual.rb |
facter-4.0.47 | lib/facter/resolvers/freebsd/virtual_resolver.rb |