spacing
[mirror/dsa-puppet.git] / modules / bacula / manifests / node.pp
1 # a bacula node.  This is stored config by a client, collected on the director
2 define bacula::node($bacula_client_port = $bacula::bacula_client_port) {
3   include bacula
4
5   $bacula_pool_name         = $bacula::bacula_pool_name
6   $bacula_filestor_name     = $bacula::bacula_filestor_name
7   $bacula_filestor_device   = $bacula::bacula_filestor_device
8   $bacula_storage_address   = $bacula::bacula_storage_address
9   $bacula_storage_port      = $bacula::bacula_storage_port
10   $bacula_storage_secret    = $bacula::bacula_storage_secret
11
12   $bacula_ca_path       = $bacula::bacula_ca_path
13   $bacula_ssl_client_cert = $bacula::bacula_ssl_client_cert
14   $bacula_ssl_client_key  = $bacula::bacula_ssl_client_key
15
16   $bacula_client_name   = "${name}-fd"
17   $bacula_client_secret = hkdf('/etc/puppet/secret', "bacula-fd-${name}")
18   $client               = $name
19
20   file { "/etc/bacula/conf.d/${name}.conf":
21     content => template('bacula/per-client.conf.erb'),
22     mode    => '0440',
23     group   => bacula,
24     notify  => Exec['bacula-director reload']
25   }
26
27   file { "/etc/bacula/storages-list.d/${name}.storage":
28     content => "$bacula::bacula_filestor_name-$client\n",
29     mode    => '0440',
30     group   => bacula,
31     notify  => Exec['bacula-director reload']
32   }
33 }
34