# the bacula storage node
-class bacula::storage inherits bacula {
+#
+# @param backup_path the directory where backups should be stored
+# @param filestor_device Storage device name prefix
+# @param filestor_name Storage device media type name prefix
+class bacula::storage (
+ String $backup_path = '/srv/bacula',
+ String $filestor_device = 'FileStorage',
+ String $filestor_name = 'File',
+) inherits bacula {
package { 'bacula-sd':
ensure => installed
}
exec { 'bacula-sd restart-when-idle':
path => '/usr/bin:/usr/sbin:/bin:/sbin',
- command => 'sh -c "setsid /usr/local/sbin/bacula-idle-restart sd &"',
+ command => "sh -c 'setsid /usr/local/sbin/bacula-idle-restart ${bacula::bacula_storage_port} bacula-sd &'",
refreshonly => true,
subscribe => File[$bacula::bacula_ssl_server_cert],
require => File['/usr/local/sbin/bacula-idle-restart'],
notify => Exec['bacula-sd restart-when-idle']
}
- file { "${bacula::bacula_backup_path}/Catalog":
- ensure => directory,
- mode => '0755',
- owner => bacula,
- group => bacula,
- ;
- }
-
package { 'python3-psycopg2': ensure => installed }
file { '/usr/local/bin/bacula-unlink-removed-volumes':
source => 'puppet:///modules/bacula/bacula-unlink-removed-volumes',
| EOF
}
- Bacula::Storage_per_node<<| |>>
+ Bacula::Storage::Client<<| tag == "bacula::to-storage::${::fqdn}" |>>
}