Skip to content

Puppet type/provider for (limited) yaml setting manipulation as resources

License

Notifications You must be signed in to change notification settings

reidmv/puppet-module-yamlfile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

yamlfile

yamlfile module with yaml_setting type+provider, a la Chris Price’ inifile module / ini_setting type+provider

This is an experimental utility module allowing for more dynamic configuration of the myriad of yaml files used to configure various yaml-configured ruby applications with finer grained control than templates would easily allow.

A rapid prototype provider is included built using Adrien Thebo’s filemapper utility module. It won’t account for comments but it mostly works.

Usage

The type interface is probably the hardest part and is largely a design question. The prototype says screw it, K.I.S.S., and assumes hashes are the most common thing to be dealing with for yaml configuration files. As such a pair of resources given as:

yaml_setting { 'example1_1':
  target => '/tmp/example1.yaml',
  key    => 'value/subkey/final',
  value  => ['one', 'two', 'three'],
}
yaml_setting { 'example1_2':
  target => '/tmp/example1.yaml',
  key    => 'value/subkey/other':
  value  => 'string',
}

should result in a file e.g. /tmp/example1.yaml:

value:
  subkey:
    final:
      - one
      - two
      - three
    other: string

Known Issues

Right now the type design doesn't allow for ruby symbols to be used as keys.

There are no tests.

About

Puppet type/provider for (limited) yaml setting manipulation as resources

Resources

License

Stars

Watchers

Forks

Packages

No packages published