1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
class nodo::subsystem::backup {
#
# Backup
#
class { '::backup': }
$local_backup = hiera('nodo::subsystem::backup::localhost', false)
# Local encrypted backup
case $local_backup {
true,enabled,present: {
backup::duplicity { "localhost":
encryptkey => hiera('nodo::subsystem::backup::encryptkey', false),
password => hiera('nodo::subsystem::backup::password'),
}
}
false,absent: {
backup::duplicity { "localhost":
encryptkey => hiera('nodo::subsystem::backup::encryptkey', false),
password => hiera('nodo::subsystem::backup::password', false),
ensure => absent,
}
}
default: { }
}
# Setup rsync instances
$rsync = hiera('backup::rsync', {})
create_resources('backup::rsync', $rsync)
# Setup borg instances
$borg = hiera('backup::borg', {})
create_resources('backup::borg', $borg)
}
|