Sha256: 5805a9288d5c937c8abc2bef238c78bafb51b57007703e26310297db9e5108bf

Contents?: true

Size: 698 Bytes

Versions: 49

Compression:

Stored size: 698 Bytes

Contents

# frozen_string_literal: true

module Facts
  module Linux
    class Xen
      FACT_NAME = 'xen'
      ALIASES = 'xendomains'

      def call_the_resolver
        xen_type = check_virt_what || check_xen
        return Facter::ResolvedFact.new(FACT_NAME, nil) if !xen_type || xen_type != 'xen0'

        domains = Facter::Resolvers::Xen.resolve(:domains) || []

        [Facter::ResolvedFact.new(FACT_NAME, { domains: domains }),
         Facter::ResolvedFact.new(ALIASES, domains.entries.join(','), :legacy)]
      end

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

      def check_xen
        Facter::Resolvers::Xen.resolve(:vm)
      end
    end
  end
end

Version data entries

49 entries across 49 versions & 1 rubygems

Version Path
facter-4.0.44 lib/facter/facts/linux/xen.rb
facter-4.0.43 lib/facter/facts/linux/xen.rb
facter-4.0.42 lib/facter/facts/linux/xen.rb
facter-4.0.41 lib/facter/facts/linux/xen.rb
facter-4.0.40 lib/facter/facts/linux/xen.rb
facter-4.0.39 lib/facter/facts/linux/xen.rb
facter-4.0.38 lib/facter/facts/linux/xen.rb
facter-4.0.37 lib/facter/facts/linux/xen.rb
facter-4.0.36 lib/facter/facts/linux/xen.rb