# bacula class -- defines all the variables we care about in our bacula deployment # # @param public_addresses this host's public IP addresses. The ones it connects out from and is reachable from outsite. class bacula ( String $bacula_operator_email = 'bacula-reports@admin.debian.org', String $bacula_director_name = 'debian-dir', String $bacula_storage_name = 'debian-sd', String $bacula_client_name = "${::fqdn}-fd", String $bacula_monitor_name = 'debian-mon', String $bacula_filestor_name = 'File', String $bacula_filestor_device = 'FileStorage', String $bacula_pool_name = 'debian', String $bacula_director_address = 'dinis.debian.org', Integer $bacula_director_port = 9101, String $bacula_storage_address = 'storace.debian.org', Integer $bacula_storage_port = 9103, String $bacula_director_secret = hkdf('/etc/puppet/secret', "bacula-dir-${::hostname}"), String $bacula_db_secret = hkdf('/etc/puppet/secret', "bacula-db-${::hostname}"), String $bacula_storage_secret = hkdf('/etc/puppet/secret', "bacula-sd-${bacula_storage_name}"), String $bacula_client_secret = hkdf('/etc/puppet/secret', "bacula-fd-${::fqdn}"), String $bacula_monitor_secret = hkdf('/etc/puppet/secret', "bacula-monitor-${bacula_director_name}"), String $bacula_ca_path = '/etc/ssl/debian/certs/ca.crt', String $bacula_ssl_client_cert = '/etc/ssl/debian/certs/thishost.crt', String $bacula_ssl_client_key = '/etc/ssl/private/thishost.key', String $bacula_ssl_server_cert = '/etc/ssl/debian/certs/thishost-server.crt', String $bacula_ssl_server_key = '/etc/ssl/private/thishost-server.key', String $bacula_dsa_client_list = '/etc/bacula/dsa-clients', String $tag_bacula_dsa_client_list = 'bacula::dsa::clientlist', Array[Stdlib::IP::Address] $public_addresses = $base::public_addresses, ) { file { '/usr/local/sbin/bacula-idle-restart': mode => '0555', source => 'puppet:///modules/bacula/bacula-idle-restart', } }