Greetings.

I'm trying to find a few concrete examples of how to use augeas within a Puppet 
module, to make changes to a JSON file. I've been googling for the past hour 
and a half, and while I have found several pages which provide reference-type 
documentation, I have yet to see a single usable example. All of the augeas 
examples seem to demonstrate how to maintain a file for which some other lens 
applies, such as /etc/hosts or /etc/ssh/sshd_config.

My situation: I have a system-wide JSON file which contains a series of 
key-value pairs, like so:

{
  "svc_host" : "server.domain.xyz" ,
  "svc_port" : "12345" ,
  "svc_user" : "username" ,
  "svc_pass" : "password" ,

  "versions" : [ "1.0" , "1.0.1" , "1.0.2" ] ,

  "agent_installed" : "1383331588" ,

  "comment"  : "This is a gratuitous comment."
}

I know that JSON is probably not be the best format for the file, but it's 
human readable, and it saves us having to write and debug configuration file 
parsing routines in seven different languages on four platforms.

I would like to be able to use Puppet modules to maintain the file. My first 
thought, of course, was to use a template, but there are several different 
components of the system which all store data in the one file, so different 
modules need to maintain different sets of "keys" within the file.

Is anybody doing something similar, and if so, would you mind sharing the 
relevant bits of your manifests? Or point me to an example of a WORKING augeas 
resource which adds or 

--
John Simpson <j...@voalte.com>
Unix System/VM Developer and Engineering Operations, Voalte
+1 (941) 312-2830 x148

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/8A01C2C3-83D6-4FBA-9EB3-CEE69C7D8E3D%40voalte.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to