Try to make dsa-check-hpssacli cron entry setup code easier to read
[mirror/dsa-puppet.git] / modules / hardware / manifests / raid / proliant.pp
1 class hardware::raid::proliant {
2         if $::smartarraycontroller_hpsa or $::smartarraycontroller_cciss {
3                 site::aptrepo { 'debian.restricted':
4                         url        => 'http://db.debian.org/debian-admin',
5                         suite      => "${::lsbdistcodename}-restricted",
6                         components => 'non-free',
7                 }
8
9                 package { 'hpacucli':
10                         ensure  => installed,
11                         tag    => extra_repo,
12                 }
13                 package { 'hpssacli':
14                         ensure  => installed,
15                         tag    => extra_repo,
16                 }
17                 if !("$::systemproductname" in ["ProLiant DL180 G5", "ProLiant DL120 G5", "ProLiant ML150 G5"]) {
18                         package { 'hp-health':
19                                 ensure => installed,
20                                 tag    => extra_repo,
21                         }
22                 }
23
24                 if $::debarchitecture == 'amd64' {
25                         package { 'lib32gcc1':
26                                 ensure => installed,
27                         }
28                 }
29
30                 if $::smartarraycontroller_hpsa {
31                         $cmd = $hostname ? {
32                                 'lobos' => 'dsa-check-hpssacli --no-battery',
33                                 'villa' => 'dsa-check-hpssacli --no-battery',
34                                 default => 'dsa-check-hpssacli'
35                         }
36
37                         concat::fragment { 'dsa-puppet-stuff--nagios--dsa-check-hpssacli':
38                                 target => '/etc/cron.d/dsa-puppet-stuff',
39                                 order  => '020',
40                                 content  => @("EOF")
41                                         27 */2 * * * root sleep $(( RANDOM \% 900 )); dsa-wrap-nagios-check ${cmd}
42                                         | EOF
43                         }
44                 }
45                 file { '/etc/cron.d/puppet-nagios-hpsa': ensure => absent, }
46         } else {
47                 site::aptrepo { 'debian.restricted':
48                         ensure => absent,
49                 }
50         }
51 }