Class: Hiera::Backend::Overrides_backend

Inherits:
Object
  • Object
show all
Defined in:
lib/hiera/backend/overrides_backend.rb

Overview

rubocop:disable Naming/ClassAndModuleCamelCase

Instance Method Summary collapse

Constructor Details

#initializeOverrides_backend

Returns a new instance of Overrides_backend.



9
10
11
# File 'lib/hiera/backend/overrides_backend.rb', line 9

def initialize
  Hiera.debug('Hiera overrides backend starting')
end

Instance Method Details

#lookup(key, scope, _order_override, resolution_type, _context) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/hiera/backend/overrides_backend.rb', line 13

def lookup(key, scope, _order_override, resolution_type, _context)
  Hiera.debug(
    "Looking up #{key} in overrides backend with #{resolution_type}"
  )

  overrides = scope && scope['overrides']
  Hiera.debug("Found overrides: #{overrides}")

  throw(:no_such_key) unless overrides

  override = overrides[key.to_s]
  Hiera.debug("Found override: #{override} for key: #{key}")

  Backend.parse_answer(override || throw(:no_such_key), scope)
end