Module: TopologicalInventory::Providers::Common::Mixins::XRhHeaders

Included in:
Operations::Source
Defined in:
lib/topological_inventory/providers/common/mixins/x_rh_headers.rb

Instance Method Summary collapse

Instance Method Details

#account_number_by_identity(identity) ⇒ Object



6
7
8
9
10
11
12
13
14
15
# File 'lib/topological_inventory/providers/common/mixins/x_rh_headers.rb', line 6

def (identity)
  return @account_number if @account_number
  return if identity.try(:[], 'x-rh-identity').nil?

  identity_hash = JSON.parse(Base64.decode64(identity['x-rh-identity']))
  @account_number = identity_hash.dig('identity', 'account_number')
rescue JSON::ParserError => e
  logger.error_ext(operation, "Failed to parse identity header: #{e.message}")
  nil
end

#identity_by_account_number(account_number) ⇒ Object



17
18
19
# File 'lib/topological_inventory/providers/common/mixins/x_rh_headers.rb', line 17

def ()
  @identity ||= {"x-rh-identity" => Base64.strict_encode64({"identity" => {"account_number" => , "user" => {"is_org_admin" => true}}}.to_json)}
end