- @ferm::rule { 'dsa-bacula-dir':
- domain => '(ip ip6)',
- description => 'Allow bacula access from localhost',
- rule => "proto tcp mod state state (NEW) dport (bacula-dir) saddr ($bacula_director_address localhost) ACCEPT",
+ 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 { '/usr/local/sbin/dsa-bacula-scheduler':
+ source => 'puppet:///modules/bacula/dsa-bacula-scheduler',
+ mode => '0555',
+ }
+
+ file { "/etc/cron.d/puppet-bacula-stuff": ensure => absent, }
+ concat::fragment { 'puppet-crontab--bacula-director':
+ target => '/etc/cron.d/puppet-crontab',
+ content => @(EOF)
+ @daily root chronic /etc/bacula/scripts/volume-purge-action -v
+ @daily root chronic /etc/bacula/scripts/volumes-delete-old -v
+ */3 * * * * root sleep $(( $RANDOM \% 60 )); flock -w 0 -e /usr/local/sbin/dsa-bacula-scheduler /usr/local/sbin/dsa-bacula-scheduler
+ | EOF