How to output pretty json in puppet

How to output pretty json in puppet

Published on Mar 14, 2012, 11:12 AM1 min read

It kept seeming like it should be straight forward. Various attempts by myself (mostly because I don't know ruby) seemed to fail. I'm just leaving it here now that I figured out how to get it working so I can find it again (and hopefully help others).

init.pp

$config_data = { "foo" => "bar" }

template.erb

<%= require "json"; JSON.pretty_generate config_data %>

I found configdata.tojson wasn't going to work for me because it seemed to output things in different orders each run.

(it was https://snippets.aktagon.com/snippets/412-How-to-pretty-print-JSON-data-with-Ruby that helped me figure this out)

Edit: While pretty, still doesn't sort so puppet can update the config file each run :( I will figure this out.

Edit: After much trial and error, I ended writing my own library. https://gist.github.com/2287885

Gavin Mogan
Burnaby, BC, Canada

I'm Gavin.

I'm a tinker, maker, and software developer.

At home I code, game, hang out, all the cool non robot things to do.

Heavily involved with Jenkins open source, and will often submit PRs to random other projects.

I also play games, both board and video games and love to read.

You can usually find me on various services as halkeye.

#notarobot

Comments