X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fbacula%2Fmanifests%2Finit.pp;h=013bcf32111f7598288fb720958401d1b2894248;hb=7a10c64995530d782139c05bbe4955ec1e4a180b;hp=b9d005b476e37a7a8c05621341a2697e2f55b2e0;hpb=a832220b134218ea09f160f7ad11c7a502233c65;p=mirror%2Fdsa-puppet.git diff --git a/modules/bacula/manifests/init.pp b/modules/bacula/manifests/init.pp index b9d005b47..013bcf321 100644 --- a/modules/bacula/manifests/init.pp +++ b/modules/bacula/manifests/init.pp @@ -1,42 +1,27 @@ -class bacula { - - $bacula_operator_email = 'bacula-reports@admin.debian.org' - - $bacula_director_name = 'debian-dir' - $bacula_storage_name = 'debian-sd' - $bacula_client_name = "${::fqdn}-fd" - $bacula_monitor_name = 'debian-mon' - $bacula_filestor_name = 'File' - $bacula_filestor_device = 'FileStorage' - $bacula_pool_name = 'debian' - - # use IP address for ferm. - $bacula_director_ip = '5.153.231.19' - $bacula_director_address = 'dinis.debian.org' - $bacula_director_port = 9101 - $bacula_storage_address = 'storace.debian.org' - $bacula_storage_port = 9103 - $bacula_client_port = 9102 - $bacula_db_address = 'danzi.debian.org' - $bacula_db_port = 5433 - - $bacula_backup_path = '/srv/bacula' - - $bacula_director_secret = hkdf('/etc/puppet/secret', "bacula-dir-${::hostname}") - $bacula_db_secret = hkdf('/etc/puppet/secret', "bacula-db-${::hostname}") - $bacula_storage_secret = hkdf('/etc/puppet/secret', "bacula-sd-${bacula_storage_name}") - $bacula_client_secret = hkdf('/etc/puppet/secret', "bacula-fd-${::fqdn}") - $bacula_monitor_secret = hkdf('/etc/puppet/secret', "bacula-monitor-${bacula_director_name}") - - $bacula_ca_path = '/etc/ssl/debian/certs/ca.crt' - $bacula_ssl_client_cert = '/etc/ssl/debian/certs/thishost.crt' - $bacula_ssl_client_key = '/etc/ssl/private/thishost.key' - $bacula_ssl_server_cert = '/etc/ssl/debian/certs/thishost-server.crt' - $bacula_ssl_server_key = '/etc/ssl/private/thishost-server.key' - - file { '/usr/local/sbin/bacula-idle-restart': - mode => '0555', - source => 'puppet:///modules/bacula/bacula-idle-restart', - } - +# bacula class -- defines all the variables we care about in our bacula deployment +# +# @param public_addresses this host's public IP addresses. The ones it connects out from and is reachable from outsite. +# @param has_ipv4 daemons should listen on ipv4 +# @param has_ipv6 daemons should listen on ipv6 +class bacula ( + String $bacula_operator_email = 'bacula-reports@admin.debian.org', + + String $bacula_ca_path = '/etc/ssl/debian/certs/ca.crt', + String $bacula_ssl_client_cert = '/etc/ssl/debian/certs/thishost.crt', + String $bacula_ssl_client_key = '/etc/ssl/private/thishost.key', + String $bacula_ssl_server_cert = '/etc/ssl/debian/certs/thishost-server.crt', + String $bacula_ssl_server_key = '/etc/ssl/private/thishost-server.key', + + String $bacula_dsa_client_list = '/etc/bacula/dsa-clients', + String $tag_bacula_dsa_client_list = 'bacula::dsa::clientlist', + + Array[Stdlib::IP::Address] $public_addresses = $base::public_addresses, + + Boolean $has_ipv4 = $bacula::public_addresses.any |$addr| { $addr =~ Stdlib::IP::Address::V4 }, + Boolean $has_ipv6 = $bacula::public_addresses.any |$addr| { $addr =~ Stdlib::IP::Address::V6 }, +) { + file { '/usr/local/sbin/bacula-idle-restart': + mode => '0555', + source => 'puppet:///modules/bacula/bacula-idle-restart', + } }