Puppet module for managing duplicity backups
class { duplicity::cloudfiles:
username => 'account',
api_key => 'fsgzet6uis54ag4sfgae5a4'
}
duplicity::job::cloudfiles { 'example':
directories => ['/root', '/home', '/var/www'],
container => "backups-$::fqdn",
hour => '4',
minute => '0',
remove_older_than => '30D',
options => {
'--full-if-older-than' => '7D'
}
}
duplicity::job::cloudfiles { 'example':
directories => ['/root', '/home', '/var/www'],
container => "backups-$::fqdn",
hour => '4',
minute => '0',
flags => ['--no-encryption']
}
duplicity::job::cloudfiles { 'example':
directories => ['/root', '/home', '/var/www'],
container => "backups-$::fqdn",
hour => '4',
minute => '0',
env_vars => {
'PASSPHRASE' => 'wesetsiccyCablukkia'
}
}
When using asymmetric encryption you must pass the gpg key id to duplicity.
duplicity::job::cloudfiles { 'example':
directories => ['/root', '/home', '/var/www'],
container => "backups-$::fqdn",
hour => '4',
minute => '0',
options => {
'--encrypt-id' => '4C1DDCD3'
}
}