Newer
Older
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
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
# ipmi class to load ipmi client modules except on VMware platforms
class base::ipmi {
# disable ipmi and ipmievd on vmware (or others)
if $::is_virtual == 'true' { # string comparison
case $::operatingsystem {
'debian', 'ubuntu': {
package { 'ipmitool': ensure => purged }
}
'redhat': {
service { 'ipmi':
ensure => stopped,
enable => false,
}
}
default: {}
}
} else {
case $::operatingsystem {
'debian','ubuntu': {
package { 'ipmitool':
ensure => present;
}
base::os::kernel-module { 'ipmi_msghandler':
ensure => present;
}
base::os::kernel-module { 'ipmi_si':
ensure => present,
require => Os::Kernel-module['ipmi_msghandler'];
}
base::os::kernel-module { 'ipmi_devintf':
ensure => present,
require => Os::Kernel-module['ipmi_si'];
}
service { 'ipmievd':
ensure => running,
name => 'ipmievd',
enable => true,
hasstatus => false,
status => 'pidof ipmievd',
require => [Os::Kernel-module['ipmi_devintf'],
File['/etc/default/ipmievd']
],
}
file { '/etc/default/ipmievd':
source => 'puppet:///modules/base/ipmi/etc/default/ipmievd',
notify => Service['ipmievd'],
}
}
'redhat': {
case $::lsbmajdistrelease {
'6': {
package { 'OpenIPMI': ensure => present; }
}
default: {
package {
'OpenIPMI-tools': ensure => present;
'OpenIPMI': ensure => present;
}
}
}
service { 'ipmi':
ensure => running,
name => 'ipmi',
enable => true,
hasstatus => true,
require => Package['OpenIPMI'],
}
case $::lsbdistcodename {
'tikanga','santiago': {
service { 'ipmievd':
ensure => running,
name => 'ipmievd',
enable => true,
hasstatus => true,
require => $::lsbdistcodename ? {
'tikanaga' => Package['OpenIPMI-tools'],
default => Package['OpenIPMI'],
},
}
}
}
}
}
}
}