Skip to content

Commit 4f47041

Browse files
committed
modernize code
1 parent 1302585 commit 4f47041

File tree

3 files changed

+54
-35
lines changed

3 files changed

+54
-35
lines changed

data/common.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ lookup_options:
33
limits::entries:
44
merge: deep
55

6-
limits::entries: {}
76
limits::limits_dir: /etc/security/limits.d
87
limits::manage_limits_d_dir: true
98
limits::purge_limits_d_dir: true
@@ -18,3 +17,5 @@ limits::limits_file_mode: '0644'
1817
# until a specific tempalte for each OS and/or major OS version
1918
# is supplied.
2019
limits::limits_template: 'generic'
20+
21+
limits::entries: null

manifests/init.pp

Lines changed: 37 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,33 +6,51 @@
66
# @example
77
# include limits
88
#
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+
#
924
# @param limits_file_owner
10-
# The owner of the limits.conf file.
25+
# Owner of $limits_file
1126
#
1227
# @param limits_file_group
13-
# The group of the limits.conf file.
28+
# Group $limits_file
1429
#
1530
# @param limits_file_mode
16-
# The mode of the limits.conf file.
31+
# Mode $limits_file
1732
#
1833
# @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
2038
#
2139
class limits (
22-
Hash $entries,
23-
String $limits_dir,
40+
String[1] $limits_dir,
2441
Boolean $manage_limits_d_dir,
2542
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,
3250
) {
3351
if $manage_limits_d_dir {
3452
file { $limits_dir:
35-
ensure => 'directory',
53+
ensure => directory,
3654
owner => 'root',
3755
group => 'root',
3856
force => true,
@@ -43,17 +61,19 @@
4361

4462
if $manage_limits_file {
4563
file { $limits_file:
46-
ensure => 'file',
64+
ensure => file,
4765
owner => $limits_file_owner,
4866
group => $limits_file_group,
4967
mode => $limits_file_mode,
5068
content => template("limits/${limits_template}.erb"),
5169
}
5270
}
5371

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+
}
5777
}
5878
}
5979
}

manifests/limits.pp

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@
2323
# Manages:
2424
# limit file in limits.d with the values provided
2525
define limits::limits (
26-
Enum['absent', 'present'] $ensure = present,
27-
Optional[String] $user = undef,
28-
Optional[String] $limit_type = undef,
29-
Variant[Integer,String,Undef] $hard = undef,
30-
Variant[Integer,String,Undef] $soft = undef,
31-
Variant[Integer,String,Undef] $both = undef,
32-
Optional[String] $target = undef,
26+
Enum['absent', 'present'] $ensure = present,
27+
Optional[String[1]] $user = undef,
28+
Optional[String[1]] $limit_type = undef,
29+
Optional[Variant[Integer, String]] $hard = undef,
30+
Optional[Variant[Integer, String]] $soft = undef,
31+
Optional[Variant[Integer, String]] $both = undef,
32+
Optional[String[1]] $target = undef,
3333
) {
3434
include limits
3535

@@ -65,22 +65,20 @@
6565
}
6666
}
6767

68-
if (!defined(Concat[$target_file])) {
69-
concat { $target_file:
70-
ensure => $ensure,
71-
owner => 'root',
72-
group => 'root',
73-
}
74-
75-
concat::fragment { "top_${target_file}":
68+
ensure_resource('concat::fragment', "top_${target_file}", {
7669
target => $target_file,
7770
content => "# Managed by Puppet\n\n#<domain> <type> <item> <value>\n",
7871
order => '01',
79-
}
80-
}
72+
})
8173

8274
concat::fragment { "${real_user}_${real_type}":
8375
target => $target_file,
8476
content => template('limits/limits.erb'),
8577
}
78+
79+
ensure_resource('concat', $target_file, {
80+
ensure => $ensure,
81+
owner => 'root',
82+
group => 'root',
83+
})
8684
}

0 commit comments

Comments
 (0)