1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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
|
class apcupsd {
package { "apcupsd":
ensure => installed,
}
define ups($type = 'apcsmart', $cable = 'smart', $device = '/dev/ttyS0', $ensure = 'present') {
$ups_configured = $ensure ? {
'present' => 'yes',
'absent' => 'no',
}
$ups_state = $ensure ? {
'present' => 'running',
'absent' => 'stopped',
}
file { "/etc/apcupsd":
ensure => 'directory',
owner => 'root',
group => 'root',
mode => 755,
}
file { "/etc/apcupsd/apcupsd.conf":
ensure => present,
owner => root,
group => root,
mode => 644,
require => File["/etc/apcupsd"],
content => template('apcupsd/apcupsd.conf.erb'),
}
file { "/etc/default/apcupsd":
ensure => present,
owner => root,
group => root,
mode => 644,
content => template('apcupsd/default/apcupsd.erb'),
}
service { "apcupsd":
enable => true,
ensure => $ups_state,
hasrestart => true,
require => [ File["/etc/apcupsd/apcupsd.conf"], Package["apcupsd"] ],
}
}
}
|