Puppet Class: zabbix::server::install

Defined in:
manifests/server/install.pp

Overview



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
# File 'manifests/server/install.pp', line 1

class zabbix::server::install () {
  mysql::database{ 'zabbix':
    user    => 'zabbix',
    require => Class['mysql'],
  }

  if ! defined(File['/root/preseed/'])
  {
    file { '/root/preseed':
      ensure => directory,
      mode   => '0750',
    }
  }

  file { '/root/preseed/zabbix-server.preseed.temp':
    content => template('zabbix/server.preseed.erb'),
    mode    => '0600',
    backup  => false,
    require => File['/root/preseed'],
  }

  exec { '/root/preseed/zabbix-server.preseed':
    command  => 'ADMINPASS=`cat /root/.passwd/db/mysql` && PASSWORD=`cat /root/.passwd/db/zabbix` && sed \'s/ZABBIXPASSWD/\'\$PASSWORD\'/g\' /root/preseed/zabbix-server.preseed.temp > /root/preseed/zabbix-server.preseed && sed -i \'s/MYSQLADMIN/\'\$ADMINPASS\'/g\' /root/preseed/zabbix-server.preseed && touch /root/preseed/zabbix-server.preseed.ok',
    provider => 'shell',
    creates  => '/root/preseed/zabbix-server.preseed.ok',
    path     => ['/bin', '/sbin', '/usr/bin', '/root/alkivi-scripts/'],
    require  => File['/root/preseed/zabbix-server.preseed.temp'],
  }

  package { $zabbix::server::params::package_name:
    ensure       => installed,
    responsefile => '/root/preseed/zabbix-server.preseed',
    require      => [Mysql::Database['zabbix'], Exec['/root/preseed/zabbix-server.preseed'] ],
  }
}