Move bacula::bacula_ssl_{server,client}_{cert,key} to hiera
[mirror/dsa-puppet.git] / modules / bacula / manifests / director / client.pp
index dc4dafc..0d356a6 100644 (file)
@@ -2,27 +2,25 @@
 #
 # 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 The name of the client (relevant for device names, media type names, etc.)
+# @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
+# @param file_retention  how long to keep information about which files are in which volumes/jobs
+# @param job_retention   how long to keep job records
 define bacula::director::client (
-  Integer $port_fd = 9102,
-  String $client = $name,
+  Integer $port_fd,
+  Stdlib::Host $client = $name,
+  String $client_name,
+  String $client_secret,
+  String $file_retention = '30 days', # XXX remove defaults
+  String $job_retention = '100 days', # XXX remove defaults
 ) {
-  include bacula
+  include bacula::director
 
-  $bacula_pool_name         = $bacula::bacula_pool_name
-  $bacula_filestor_name     = $bacula::bacula_filestor_name
-  $bacula_filestor_device   = $bacula::bacula_filestor_device
-  $bacula_storage_address   = $bacula::bacula_storage_address
-  $bacula_storage_port      = $bacula::bacula_storage_port
-  $bacula_storage_secret    = $bacula::bacula_storage_secret
-
-  $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
-
-  $bacula_client_name   = "${client}-fd"
-  $bacula_client_secret = hkdf('/etc/puppet/secret', "bacula-fd-${client}")
+  # 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'),
@@ -30,12 +28,5 @@ define bacula::director::client (
     group   => bacula,
     notify  => Exec['bacula-director reload']
   }
-
-  file { "/etc/bacula/storages-list.d/${client}.storage":
-    content => "${bacula::bacula_filestor_client}-${client}\n",
-    mode    => '0440',
-    group   => bacula,
-    notify  => Exec['bacula-director reload']
-  }
 }