class Facts::Windows::Cloud::Provider

Constants

FACT_NAME

Public Instance Methods

call_the_resolver() click to toggle source
# File lib/facter/facts/windows/cloud/provider.rb, line 9
def call_the_resolver
  virtual = Facter::Resolvers::Windows::Virtualization.resolve(:virtual)
  provider = case virtual
             when 'hyperv'
               metadata = Facter::Resolvers::Az.resolve(:metadata)
               'azure' unless metadata.nil? || metadata.empty?
             when 'kvm', 'xen'
               metadata = Facter::Resolvers::Ec2.resolve(:metadata)
               'aws' unless metadata.nil? || metadata.empty?
             when 'gce'
               metadata = Facter::Resolvers::Gce.resolve(:metadata)
               'gce' unless metadata.nil? || metadata.empty?
             end

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