18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
# File 'manifests/init.pp', line 18
class basic (
Hash $augeas,
Hash $computer,
Hash $cron,
Hash $exec,
Hash $file,
Hash $filebucket,
Hash $group,
Hash $host,
Hash $interface,
Hash $k5login,
Hash $macauthorization,
Hash $mailalias,
Hash $maillist,
Hash $mcx,
Hash $mount,
Hash $nagios_command,
Hash $nagios_contact,
Hash $nagios_contactgroup,
Hash $nagios_host,
Hash $nagios_hostdependency,
Hash $nagios_hostescalation,
Hash $nagios_hostextinfo,
Hash $nagios_hostgroup,
Hash $nagios_service,
Hash $nagios_servicedependency,
Hash $nagios_serviceescalation,
Hash $nagios_serviceextinfo,
Hash $nagios_servicegroup,
Hash $nagios_timeperiod,
Hash $notifications,
Hash $package,
Hash $resources,
Hash $router,
Hash $schedules,
Hash $scheduled_task,
Hash $seboolean,
Hash $selmodule,
Hash $service,
Hash $ssh_authorized_key,
Hash $sshkey,
Hash $stages,
Hash $tidy,
Hash $user,
Hash $vlan,
Hash $yumrepo,
Hash $zfs,
Hash $zone,
Hash $zpool,
Hash $file_line,
Hash $archive,
Hash $binary,
) {
# Iterate over all module parameters
lookup(basic::params).each |String $param| {
case $param {
'notifications': {
Basic::Type { 'notify':
hash => $notifications
}
}
'schedules': {
Basic::Type { 'schedule':
hash => $schedules
}
}
'stages': {
Basic::Type { 'stage':
hash => $stages
}
}
'binary': {
Basic::Binary { keys($binary):
properties => $binary
}
}
default: {
Basic::Type { $param:
hash => getvar("basic::${param}")
}
}
}
}
}
|