cookbook 'duplicity_ng', '= 0.1.0'
duplicity_ng
(18) Versions
0.1.0
-
Follow2
Installs/Configures duplicity_ng
cookbook 'duplicity_ng', '= 0.1.0', :supermarket
knife supermarket install duplicity_ng
knife supermarket download duplicity_ng
duplicity_ng cookbook
Cookbook for installing duplicity backup cronjobs
Supported Platforms
All platforms with a duplicity package available, and support for /etc/cron.*/
directories.
Tested on Ubuntu.
Usage
Providers
To use the providers, append the following to your metadata.rb
depends 'duplicity'
duplicity_cronjob
Installs a duplicity cronjob
duplicity_cronjob 'myduplicity' do name 'myduplicity' # Cronjob filename (name_attribute) # Attributes for the default cronjob template interval 'daily' # Cron interval (hourly, daily, monthly) duplicity_path '/usr/bin/duplicity' # Path to duplicity configure_zabbix false # Automatically configure zabbix user paremeters logfile '/dev/null' # Log cronjob output to this file # duplicity parameters backend 'ftp://server.com/folder' # Backend to use (default: nil, required!) passphrase 'supersecret' # Passphrase (leave empty to use data bag) include %w(/etc/ /root/ /var/log/) # Default directories to backup exclude %w() # Default directories to exclude from backup archive_dir '/tmp/duplicity-archive' # duplicity archive directory temp_dir '/tmp/duplicity-tmp' # duplicity temp directory keep_full 5 # Keep 5 full backups nice 10 # Be nice (cpu) ionice 3 # Ionice class (3 => idle) full_backup_if_older_than '7D' # Take a full backup after this interval # Command(s) to run at the very beginning of the cronjob (default: empty) exec_pre %(if [ -f "/nobackup" ]; then exit 0; fi) # Command(s) to run after cleanup, but before the backup (default: empty) exec_before ['pg_dumpall -U postgres |bzip2 > /tmp/dump.sql.bz2'] # Command(s) to run after the backup has finished (default: empty) exec_after ['touch /backup-sucessfull', 'echo yeeeh'] # Take duplicity passphrase from data bag data_bag 'duplicity' data_bag_item node['hostname'] data_bag_secret '/etc/chef/encrypted_data_bag_secret' data_bag_element 'passphrase' # Alternatively, you can specify your own template to use cookbook 'duplicity' # Cookbook to take erb template from source 'cronjob.sh.erb' # ERB template to use variables {} # Custom variables for ERB template end
Contributing
- Fork the repository on Github
- Create a named feature branch (i.e.
add-new-recipe
) - Write your change
- Write tests for your change (if applicable)
- Run the tests, ensuring they all pass
- Submit a Pull Request
License and Authors
Author:: Chris Aumann (me@chr4.org)
Dependent cookbooks
This cookbook has no specified dependencies.
Contingent cookbooks
There are no cookbooks that are contingent upon this one.