Use full path to bconsole more
[mirror/dsa-puppet.git] / modules / bacula / manifests / director.pp
index f1a76a4..2d3033b 100644 (file)
@@ -10,6 +10,18 @@ class bacula::director inherits bacula {
                hasstatus => true,
                require   => Package['bacula-director-pgsql']
        }
+       systemd::override { 'bacula-director':
+               content => @(EOT)
+                       [Unit]
+                       After=unbound.service
+                       | EOT
+       }
+
+       exec { 'bacula-director reload':
+               path        => '/usr/bin:/usr/sbin:/bin:/sbin',
+               command     => 'service bacula-director reload',
+               refreshonly => true,
+       }
 
        file { '/etc/bacula/conf.d':
                ensure  => directory,
@@ -19,7 +31,7 @@ class bacula::director inherits bacula {
                force   => true,
                recurse => true,
                source  => 'puppet:///files/empty/',
-               notify  => Service['bacula-director']
+               notify  => Exec['bacula-director reload']
        }
 
        file { '/etc/bacula/bacula-dir.conf':
@@ -27,23 +39,57 @@ class bacula::director inherits bacula {
                mode    => '0440',
                group   => bacula,
                require => Package['bacula-director-pgsql'],
-               notify  => Service['bacula-director']
+               notify  => Exec['bacula-director reload']
        }
 
        @ferm::rule { 'dsa-bacula-dir':
-               domain      => '(ip ip6)',
+               domain      => '(ip)',
                description => 'Allow bacula access from localhost',
-               rule        => "proto tcp mod state state (NEW) dport (bacula-dir) saddr (${bacula_director_address} localhost) ACCEPT",
+               rule        => "proto tcp mod state state (NEW) dport (bacula-dir) saddr (${bacula_director_ip} localhost) ACCEPT",
        }
 
-       file { '/etc/bacula/conf.d/empty':
+       file { '/etc/bacula/conf.d/empty.conf':
                content => '',
                mode    => '0440',
                group   => bacula,
                require => Package['bacula-director-pgsql'],
-               notify  => Service['bacula-director']
+               notify  => Exec['bacula-director reload']
        }
 
        Bacula::Node<<| |>>
 
+       package { 'bacula-console':
+               ensure => installed;
+       }
+
+       file { '/etc/bacula/bconsole.conf':
+               content => template('bacula/bconsole.conf.erb'),
+               mode    => '0640',
+               group   => bacula,
+               require => Package['bacula-console']
+       }
+
+       package { 'python3-psycopg2': ensure => installed }
+       file { '/etc/bacula/scripts/volume-purge-action':
+               mode    => '0555',
+               source  => 'puppet:///modules/bacula/volume-purge-action',
+               ;
+       }
+       file { '/etc/bacula/scripts/volumes-delete-old':
+               mode    => '0555',
+               source  => 'puppet:///modules/bacula/volumes-delete-old',
+               ;
+       }
+       file { '/etc/bacula/storages-list.d':
+               ensure  => directory,
+               mode    => '0755',
+               group   => bacula,
+               purge   => true,
+               force   => true,
+               recurse => true,
+               source  => 'puppet:///files/empty/',
+       }
+       file { "/etc/cron.d/puppet-bacula-stuff":
+               source  => 'puppet:///modules/bacula/crontab-director',
+       }
 }