summaryrefslogtreecommitdiff
path: root/lib/puppet/functions/to_json_pretty.rb
blob: 4c28539ad7cf297d8a6e9a1ee77b2dac35a28596 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# Take a data structure and output it as pretty JSON
#
# @example how to output pretty JSON
#   # output pretty json to a file
#     file { '/tmp/my.json':
#       ensure  => file,
#       content => to_json_pretty($myhash),
#     }
#
#
require 'json'

Puppet::Functions.create_function(:to_json_pretty) do
  dispatch :to_json_pretty do
    param 'Variant[Hash, Array]', :data
  end

  def to_json_pretty(data)
    JSON.pretty_generate(data)
  end
end