2020-11-13 11:36:52 +00:00
|
|
|
from hashlib import md5
|
|
|
|
|
|
|
|
defaults = {
|
|
|
|
'backup-client': {
|
|
|
|
# unix user names cannot be longer than 32 characters.
|
|
|
|
# bundlewrap raises an error if the name is longer than 30 chars.
|
|
|
|
'user-name': 'c-' + md5(node.name.encode('UTF-8')).hexdigest()[:28],
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@metadata_reactor
|
|
|
|
def cron(metadata):
|
|
|
|
if metadata.get('backups/exclude_from_backups', False):
|
|
|
|
return {}
|
|
|
|
|
|
|
|
return {
|
|
|
|
'cron': {
|
2020-11-13 11:57:50 +00:00
|
|
|
'backup': '{} 1 * * * root /usr/local/bin/generate-backup > /dev/null'.format(
|
|
|
|
(node.magic_number % 60),
|
|
|
|
),
|
2020-11-13 11:36:52 +00:00
|
|
|
},
|
|
|
|
}
|