+define backupninja_server_realize($host) {
+ User <<| tag == "backupninja-$host" |>>
+ File <<| tag == "backupninja-$host" |>>
+ Ssh_authorized_key <<| tag == "backupninja-$host" |>>
+}
+
class backupninja::server {
$real_backupdir = $backupdir ? {
}
}
- User <<| tag == "backupninja-$real_backupserver_tag" |>>
- File <<| tag == "backupninja-$real_backupserver_tag" |>>
- Ssh_authorized_key <<| tag == "backupninja-$real_backupserver_tag" |>>
+ # collect all resources from hosted backups
+ Backupninja_server_realize <| tag == "$real_backupserver_tag" |>
if !defined(Package["rsync"]) {
if $rsync_ensure_version == '' { $rsync_ensure_version = 'installed' }
default => $authorized_keys_file,
}
$real_backuptag = $backuptag ? {
- false => "backupninja-$real_host",
+ false => "backupninja-$fqdn",
default => $backuptag,
}
nagios2::passive_service { "backups-${name}": nagios2_host_name => $real_host, nagios2_description => $real_nagios2_description, servicegroups => "backups" }
}
+ @@backupninja_server_realize { "${fqdn}-${real_host}":
+ host => $fqdn,
+ tag => $real_host,
+ }
+
if !defined(File["$real_dir"]) {
@@file { "$real_dir":
ensure => directory,
tag => "$real_backuptag",
}
}
- else {
- File["$real_dir"] {
- tag +> "$real_backuptag",
- }
- }
case $installuser {
true: {
case $manage_ssh_dir {
tag => "$real_backuptag",
}
}
- else {
- File["$real_ssh_dir"] {
- tag +> "$real_backuptag",
- }
- }
}
}
case $key {
tag => "$real_backuptag",
}
}
- else {
- File["${real_ssh_dir}/${real_authorized_keys_file}"] {
- tag +> "$real_backuptag",
- }
- }
}
default: {
if !defined(Ssh_autorized_key["$real_user"]) {
require => User[$real_user],
}
}
- else {
- Ssh_authorized_key["$real_user"] {
- tag +> "$real_backuptag",
- }
- }
}
}
case $uid {
tag => "$real_backuptag"
}
}
- else {
- User["$real_user"] {
- tag +> "$real_backuptag",
- }
- }
}
default: {
if !defined(User["$real_user"]) {
tag => "$real_backuptag"
}
}
- else {
- User["$real_user"] {
- tag +> "$real_backuptag",
- }
- }
}
}
}