summaryrefslogtreecommitdiff
path: root/puppet/modules/backupninja/manifests/init.pp
blob: e453e7033506d28a360737bd7cfdb4ceda9f306b (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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# configure backupninja
class backupninja (
  $ensure_backupninja_version = 'installed',
  $ensure_rsync_version = 'installed',
  $ensure_rdiffbackup_version = 'installed',
  $ensure_debconfutils_version = 'installed',
  $ensure_hwinfo_version = 'installed',
  $ensure_duplicity_version = 'installed',
  $configdir = '/etc/backup.d',
  $keystore = "${::fileserver}/keys/backupkeys",
  $keystorefspath = false,
  $keytype = 'rsa',
  $keydest = '/root/.ssh',
  $keyowner = 0,
  $keygroup = 0,
  $keymanage = true,
  $configfile = '/etc/backupninja.conf',
  $loglvl = 4,
  $when = 'everyday at 01:00',
  $reportemail = 'root',
  $reportsuccess = false,
  $reportwarning = true,
  $reporthost = undef,
  $reportuser = undef,
  $reportdirectory = undef,
  $logfile = '/var/log/backupninja.log',
  $scriptdir = '/usr/share/backupninja',
  $libdir = '/usr/lib/backupninja',
  $usecolors = true,
  $vservers = false,
  $manage_nagios = false,
) {

  # install client dependencies
  ensure_resource('package', 'backupninja', {'ensure' => $ensure_backupninja_version})

  # set up backupninja config directory
  file { $configdir:
    ensure => directory,
    mode   => '0750',
    owner  => 0,
    group  => 0;
  }

  file { $configfile:
    content => template('backupninja/backupninja.conf.erb'),
    owner   => root,
    group   => 0,
    mode    => '0644'
  }

}