0bc4561b1a6e23bc94395f4f595b267034bd1dcb
[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
4         include bacula
5
6         $bacula_pool_name         = $bacula::bacula_pool_name
7         $bacula_filestor_name     = $bacula::bacula_filestor_name
8         $bacula_filestor_device   = $bacula::bacula_filestor_device
9         $bacula_storage_address   = $bacula::bacula_storage_address
10         $bacula_storage_port      = $bacula::bacula_storage_port
11         $bacula_storage_secret    = $bacula::bacula_storage_secret
12
13         $bacula_ca_path       = $bacula::bacula_ca_path
14         $bacula_ssl_client_cert = $bacula::bacula_ssl_client_cert
15         $bacula_ssl_client_key  = $bacula::bacula_ssl_client_key
16
17         $bacula_client_name   = "${name}-fd"
18         $bacula_client_secret = hkdf('/etc/puppet/secret', "bacula-fd-${name}")
19         $client               = $name
20
21         file { "/etc/bacula/conf.d/${name}.conf":
22                 content => template('bacula/per-client.conf.erb'),
23                 mode    => '0440',
24                 group   => bacula,
25                 notify  => Exec['bacula-director reload']
26         }
27
28         file { "/etc/bacula/storages-list.d/${name}.storage":
29                 content => "$bacula::bacula_filestor_name-$client\n",
30                 mode    => '0440',
31                 group   => bacula,
32                 notify  => Exec['bacula-director reload']
33         }
34 }
35