Sha256: 9beac75bd0c04a719d7c578ac33895d582473e87c1b7e57d0bda8fafff1297f4

Contents?: true

Size: 1.47 KB

Versions: 24

Compression:

Stored size: 1.47 KB

Contents

require 'hiera/puppet_function'

# Returns all matches throughout the hierarchy --- not just the first match --- as a flattened array of unique values.
#  If any of the matched values are arrays, they're flattened and included in the results.
#
#  The function can be called in one of three ways:
#  1. Using 1 to 3 arguments where the arguments are:
#     'key'      [String] Required
#           The key to lookup.
#     'default`  [Any] Optional
#           A value to return when there's no match for `key`. Optional
#     `override` [Any] Optional
#           An argument in the third position, providing a data source
#           to consult for matching values, even if it would not ordinarily be
#           part of the matched hierarchy. If Hiera doesn't find a matching key
#           in the named override data source, it will continue to search through the
#           rest of the hierarchy.
#
#  2. Using a 'key' and an optional 'override' parameter like in #1 but with a block to
#     provide the default value. The block is called with one parameter (the key) and
#     should return the value.
#
#  3. Like #1 but with all arguments passed in an array.
#  If any matched value is a hash, puppet will raise a type mismatch error.
#
#  More thorough examples of `hiera` are available at:
#  <http://docs.puppetlabs.com/hiera/1/puppet.html#hiera-lookup-functions>
Puppet::Functions.create_function(:hiera_array, Hiera::PuppetFunction) do
  init_dispatch

  def merge_type
    :array
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
puppet-3.8.7 lib/puppet/functions/hiera_array.rb
puppet-3.8.7-x86-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.7-x64-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.6 lib/puppet/functions/hiera_array.rb
puppet-3.8.6-x86-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.6-x64-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.5 lib/puppet/functions/hiera_array.rb
puppet-3.8.5-x86-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.5-x64-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.4 lib/puppet/functions/hiera_array.rb
puppet-3.8.4-x86-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.4-x64-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.3 lib/puppet/functions/hiera_array.rb
puppet-3.8.3-x86-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.3-x64-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.2 lib/puppet/functions/hiera_array.rb
puppet-3.8.2-x86-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.2-x64-mingw32 lib/puppet/functions/hiera_array.rb
puppet-3.8.1 lib/puppet/functions/hiera_array.rb
puppet-3.8.1-x86-mingw32 lib/puppet/functions/hiera_array.rb