OLD | NEW |
| (Empty) |
1 # == Type: fluent::plugin | |
2 # | |
3 # Maintain Fluentd plugin files. | |
4 # | |
5 # Type fluent::plugin is a thin layer around a single Puppet file resource | |
6 # definition, combining the available parameters with ones computed internally | |
7 # (aligned with http://docs.fluentd.org/articles/plugin-management). | |
8 # | |
9 # === Parameters: | |
10 # | |
11 # [*content*] | |
12 # Translates directly into the file $content parameter. | |
13 # | |
14 # [*ensure*] | |
15 # Translates directly into the file $ensure parameter. | |
16 # | |
17 # [*name*] | |
18 # Used as basename (without .rb extension or directory path) when | |
19 # generating the plugin file $path. | |
20 # | |
21 # [*source*] | |
22 # Translates directly into the file $source parameter. | |
23 # | |
24 # [*target*] | |
25 # Translates directly into the file $target parameter. | |
26 # | |
27 # === Examples: | |
28 # | |
29 # fluent::plugin {'example1': | |
30 # name => 'my_plugin', | |
31 # source => 'puppet:///modules/custom/fluentd/plugin.rb', | |
32 # } | |
33 # | |
34 # fluent::plugin {'example2': | |
35 # ensure => 'link', | |
36 # target => '/opt/custom-fluentd-stuff/plugin.rb', | |
37 # } | |
38 # | |
39 define fluent::plugin ( | |
40 $content = undef, | |
41 $ensure = 'present', | |
42 $source = undef, | |
43 $target = undef, | |
44 ) { | |
45 | |
46 include fluent | |
47 include stdlib | |
48 | |
49 file {"fluent::plugin#$title": | |
50 content => $content, | |
51 ensure => $ensure, | |
52 group => $fluent::group, | |
53 mode => 0640, | |
54 notify => Service['fluent'], | |
55 owner => getparam(File['fluent'], 'owner'), | |
56 path => "$fluent::directory/plugin/$name.rb", | |
57 require => File["$fluent::directory/plugin"], | |
58 source => $source, | |
59 target => $target, | |
60 } | |
61 } | |
OLD | NEW |