class Facter::Resolvers::Az

Constants

AZ_METADATA_URL
AZ_SESSION_TIMEOUT

Private Class Methods

determine_session_timeout() click to toggle source
# File lib/facter/resolvers/az.rb, line 32
def determine_session_timeout
  session_env = ENV['AZ_SESSION_TIMEOUT']
  session_env ? session_env.to_i : AZ_SESSION_TIMEOUT
end
get_data_from(url) click to toggle source
# File lib/facter/resolvers/az.rb, line 27
def get_data_from(url)
  headers = { Metadata: 'true' }
  Facter::Util::Resolvers::Http.get_request(url, headers, { session: determine_session_timeout }, false)
end
post_resolve(fact_name, _options) click to toggle source
# File lib/facter/resolvers/az.rb, line 14
def post_resolve(fact_name, _options)
  log.debug('Querying Az metadata')
  @fact_list.fetch(fact_name) { read_facts(fact_name) }
end
read_facts(fact_name) click to toggle source
# File lib/facter/resolvers/az.rb, line 19
def read_facts(fact_name)
  @fact_list[:metadata] = {}
  data = get_data_from(AZ_METADATA_URL)
  @fact_list[:metadata] = JSON.parse(data) unless data.empty?

  @fact_list[fact_name]
end