# Bacula client config on the director # # This is stored config by a client, collected on the director # # @param port_fd port that this node's bacula-fd is listening on # @param client name of the client (relevant for device names, media type names, etc.) # @param client_name bacula client name # @param client_secret shared secret between director and client define bacula::director::client ( Integer $port_fd, String $client = $name, String $client_name = "${client}-fd", # XXX remove default String $client_secret = hkdf('/etc/puppet/secret', "bacula-fd-${client}"), # XXX remove default ) { include bacula::director $bacula_ca_path = $bacula::bacula_ca_path $bacula_ssl_client_cert = $bacula::bacula_ssl_client_cert $bacula_ssl_client_key = $bacula::bacula_ssl_client_key # we define this in both bacula::director::client_from_storage and # bacula::director::client and it needs to match. $pool_name = "${bacula::director::pool_name}-${client}" file { "/etc/bacula/conf.d/${client}.conf": content => template('bacula/director/dir-per-client.erb'), mode => '0440', group => bacula, notify => Exec['bacula-director reload'] } }