fabce50aef21d7413b16f49638a9ad49ee5ba714
[mirror/dsa-puppet.git] / modules / bacula / manifests / storage / director.pp
1 # Bacula sd config: director snippet
2 #
3 # Each/The director exports this class to be collected by each/the storage.
4 #
5 # @param director_name     bacula name of the dir instance
6 # @param director_address  address of this dir instance that other instances should connect to (dns name)
7 # @param messages_name   name of the Messages Resource
8 define bacula::storage::director(
9   String $director_name,
10   Stdlib::Host $director_address,
11   String $messages_name = "Msg-${director_address}", # XXX remove default
12 ) {
13   include bacula::storage
14
15   # this is created in both bacula::storage::client and
16   # bacula::storage::director and needs to be the same
17   $dir_storage_secret = hkdf('/etc/puppet/secret', "bacula::director<->storage::${director_address}<->${::fqdn}")
18
19   file {
20     "/etc/bacula/storage-conf.d/Dir_${director_address}.conf":
21       content => template('bacula/storage/sd-per-director.conf.erb'),
22       mode    => '0440',
23       group   => bacula,
24       notify  => Exec['bacula-sd restart-when-idle'],
25       ;
26   }
27 }