]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/bacula/manifests/director.pp
We want to backup the director itself too
[dsa-puppet.git] / modules / bacula / manifests / director.pp
1 class bacula::director inherits bacula {
2         bacula::node { $::fqdn: }
3
4         package { ['bacula-director-pgsql', 'bacula-common', 'bacula-common-pgsql']:
5                 ensure => installed
6         }
7
8         service { 'bacula-director':
9                 ensure    => running,
10                 enable    => true,
11                 hasstatus => true,
12                 require   => Package['bacula-director-pgsql']
13         }
14
15         file { '/etc/bacula/conf.d':
16                 ensure  => directory,
17                 mode    => '0755',
18                 group   => bacula,
19                 purge   => true,
20                 force   => true,
21                 recurse => true,
22                 source  => 'puppet:///files/empty/',
23                 notify  => Service['bacula-director']
24         }
25
26         file { '/etc/bacula/bacula-dir.conf':
27                 content => template('bacula/bacula-dir.conf.erb'),
28                 mode    => '0440',
29                 group   => bacula,
30                 require => Package['bacula-director-pgsql'],
31                 notify  => Service['bacula-director']
32         }
33
34         @ferm::rule { 'dsa-bacula-dir':
35                 domain      => '(ip ip6)',
36                 description => 'Allow bacula access from localhost',
37                 rule        => "proto tcp mod state state (NEW) dport (bacula-dir) saddr (${bacula_director_address} localhost) ACCEPT",
38         }
39
40         file { '/etc/bacula/conf.d/empty.conf':
41                 content => '',
42                 mode    => '0440',
43                 group   => bacula,
44                 require => Package['bacula-director-pgsql'],
45                 notify  => Service['bacula-director']
46         }
47
48         Bacula::Node<<| |>>
49
50         package { 'bacula-console':
51                 ensure => installed;
52         }
53
54         file { '/etc/bacula/bconsole.conf':
55                 content => template('bacula/bconsole.conf.erb'),
56                 mode    => '0640',
57                 group   => bacula,
58                 require => Package['bacula-console']
59         }
60 }