|
6 | 6 | # @example |
7 | 7 | # include limits |
8 | 8 | # |
| 9 | +# @param limits_dir |
| 10 | +# Directory for individual limits config files |
| 11 | +# |
| 12 | +# @param manage_limits_d_dir |
| 13 | +# Manage $limits_dir itself |
| 14 | +# |
| 15 | +# @param purge_limits_d_dir |
| 16 | +# Purge $limits_dir |
| 17 | +# |
| 18 | +# @param limits_file |
| 19 | +# Basic limits configuration file |
| 20 | +# |
| 21 | +# @param manage_limits_file |
| 22 | +# Manage $limits_file |
| 23 | +# |
9 | 24 | # @param limits_file_owner |
10 | | -# The owner of the limits.conf file. |
| 25 | +# Owner of $limits_file |
11 | 26 | # |
12 | 27 | # @param limits_file_group |
13 | | -# The group of the limits.conf file. |
| 28 | +# Group $limits_file |
14 | 29 | # |
15 | 30 | # @param limits_file_mode |
16 | | -# The mode of the limits.conf file. |
| 31 | +# Mode $limits_file |
17 | 32 | # |
18 | 33 | # @param limits_template |
19 | | -# The name of the template to use for ${limits_file |
| 34 | +# Name of the template to use for $limits_file |
| 35 | +# |
| 36 | +# @param entries |
| 37 | +# limits configuration file(s) entries |
20 | 38 | # |
21 | 39 | class limits ( |
22 | | - Hash $entries, |
23 | | - String $limits_dir, |
| 40 | + String[1] $limits_dir, |
24 | 41 | Boolean $manage_limits_d_dir, |
25 | 42 | Boolean $purge_limits_d_dir, |
26 | | - String $limits_file = $limits::limits_file, |
27 | | - Boolean $manage_limits_file = false, |
28 | | - String[1] $limits_file_owner = $limits::limits_file_owner, |
29 | | - String[1] $limits_file_group = $limits::limits_file_group, |
30 | | - String[1] $limits_file_mode = $limits::limits_file_mode, |
31 | | - Optional[String] $limits_template = $limits::limits_template, |
| 43 | + String[1] $limits_file, |
| 44 | + Boolean $manage_limits_file, |
| 45 | + String[1] $limits_file_owner, |
| 46 | + String[1] $limits_file_group, |
| 47 | + String[1] $limits_file_mode, |
| 48 | + String[1] $limits_template, |
| 49 | + Optional[Hash[String[1], Hash[Pattern[/\A[a-z][a-z0-9_]*\Z/], Data], 1]] $entries, |
32 | 50 | ) { |
33 | 51 | if $manage_limits_d_dir { |
34 | 52 | file { $limits_dir: |
35 | | - ensure => 'directory', |
| 53 | + ensure => directory, |
36 | 54 | owner => 'root', |
37 | 55 | group => 'root', |
38 | 56 | force => true, |
|
43 | 61 |
|
44 | 62 | if $manage_limits_file { |
45 | 63 | file { $limits_file: |
46 | | - ensure => 'file', |
| 64 | + ensure => file, |
47 | 65 | owner => $limits_file_owner, |
48 | 66 | group => $limits_file_group, |
49 | 67 | mode => $limits_file_mode, |
50 | 68 | content => template("limits/${limits_template}.erb"), |
51 | 69 | } |
52 | 70 | } |
53 | 71 |
|
54 | | - $entries.each | String $e_name, Hash $e_params | { |
55 | | - limits::limits { $e_name: |
56 | | - * => $e_params, |
| 72 | + if $entries !~ Undef { |
| 73 | + each($entries) | $e_name, $e_params | { |
| 74 | + limits::limits { $e_name: |
| 75 | + * => $e_params, |
| 76 | + } |
57 | 77 | } |
58 | 78 | } |
59 | 79 | } |
0 commit comments