aboutsummaryrefslogtreecommitdiff
path: root/manifests/subsystem/backup.pp
blob: 3ffc4f2d517c9e0c1e0121fe8432f51080d21d5f (plain)
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
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'),
        ensure     => absent,
      }
    }
    default: { }
  }

  # Setup rsync instances
  $rsync = hiera('backup::rsync', {})
  create_resources('backup::rsync', $rsync)
}