76493880d2a0d7cb83c46b75ddf422a2bfe68abf
[mirror/dsa-puppet.git] / modules / bacula / manifests / init.pp
1 # bacula class -- defines all the variables we care about in our bacula deployment
2 #
3 # @param public_addresses this host's public IP addresses.  The ones it connects out from and is reachable from outsite.
4 class bacula (
5   String  $bacula_operator_email      = 'bacula-reports@admin.debian.org',
6   String  $bacula_director_name       = 'debian-dir',
7   String  $bacula_storage_name        = 'debian-sd',
8   String  $bacula_client_name         = "${::fqdn}-fd",
9   String  $bacula_monitor_name        = 'debian-mon',
10   String  $bacula_filestor_name       = 'File',
11   String  $bacula_filestor_device     = 'FileStorage',
12   String  $bacula_pool_name           = 'debian',
13
14   String  $bacula_director_address    = 'dinis.debian.org',
15   Integer $bacula_director_port       = 9101,
16   String  $bacula_storage_address     = 'storace.debian.org',
17   Integer $bacula_storage_port        = 9103,
18   Integer $bacula_client_port         = 9102,
19   String  $bacula_db_address          = 'danzi.debian.org',
20   Integer $bacula_db_port             = 5433,
21
22   String  $bacula_backup_path         = '/srv/bacula',
23
24   String  $bacula_director_secret     = hkdf('/etc/puppet/secret', "bacula-dir-${::hostname}"),
25   String  $bacula_db_secret           = hkdf('/etc/puppet/secret', "bacula-db-${::hostname}"),
26   String  $bacula_storage_secret      = hkdf('/etc/puppet/secret', "bacula-sd-${bacula_storage_name}"),
27   String  $bacula_client_secret       = hkdf('/etc/puppet/secret', "bacula-fd-${::fqdn}"),
28   String  $bacula_monitor_secret      = hkdf('/etc/puppet/secret', "bacula-monitor-${bacula_director_name}"),
29
30   String  $bacula_ca_path             = '/etc/ssl/debian/certs/ca.crt',
31   String  $bacula_ssl_client_cert     = '/etc/ssl/debian/certs/thishost.crt',
32   String  $bacula_ssl_client_key      = '/etc/ssl/private/thishost.key',
33   String  $bacula_ssl_server_cert     = '/etc/ssl/debian/certs/thishost-server.crt',
34   String  $bacula_ssl_server_key      = '/etc/ssl/private/thishost-server.key',
35
36   String  $bacula_dsa_client_list     = '/etc/bacula/dsa-clients',
37   String  $tag_bacula_dsa_client_list = 'bacula::dsa::clientlist',
38
39   Array[Stdlib::IP::Address] $public_addresses = $base::public_addresses,
40 ) {
41   file { '/usr/local/sbin/bacula-idle-restart':
42     mode    => '0555',
43     content => template('bacula/bacula-idle-restart.erb'),
44   }
45 }