equal
deleted
inserted
replaced
|
1 # Define puppi::ze |
|
2 # |
|
3 # The Puppi 2.0 define that transforms any class variable in data |
|
4 # you can use with Puppi |
|
5 # |
|
6 # == Usage |
|
7 # Basic Usage: |
|
8 # puppi::ze { "openssh": |
|
9 # variables => get_class_args(), |
|
10 # } |
|
11 # |
|
12 # puppi::ze { "openssh": |
|
13 # variables => get_class_args(), |
|
14 # filter => '.*content.*|.*key.*', |
|
15 # } |
|
16 # |
|
17 define puppi::ze ( |
|
18 $variables, |
|
19 $helper = 'standard', |
|
20 $filter = '.*content.*|.*password.*', |
|
21 $ensure = 'present' ) { |
|
22 |
|
23 require puppi |
|
24 require puppi::params |
|
25 |
|
26 file { "puppize_${name}": |
|
27 ensure => $ensure, |
|
28 path => "${puppi::params::datadir}/${helper}_${name}.yml", |
|
29 mode => '0644', |
|
30 owner => $puppi::params::configfile_owner, |
|
31 group => $puppi::params::configfile_group, |
|
32 content => inline_template("---\n<%= Hash[@variables].reject{ |k,v| k.to_s =~ /(${filter})/ }.keys.sort.map{|k| Array({k => @variables[k]}.to_yaml)[1..-1].join}.join(\"\n\") %>\n"), |
|
33 } |
|
34 |
|
35 } |