Filesystem and database backup Buildout recipe.
Project description
praekelt.recipe.backup
Filesystem and database backup Buildout recipe.
Creates a bin/ script with which you can easily create backups of any path and/or database. Uses rsync to create incrementally complete backups, see: Do-It-Yourself Backup System Using Rsync.
NOTE: This recipe is under active development and has not been fully tested in a production environment. Use at your own risk.
Usage
Add a part in buildout.cfg like so:
[buildout] parts = backup [backup] recipe = praekelt.recipe.backup prefix = foobar local_storage_path = /var/backups
Running the buildout will add a backup script with the same name as your backup part in the bin/ directory. In this case bin/backup. The resulting script will create timestamped backups of the buildout path prefixed with the string foobar locally in /var/backups.
Options
- prefix
String prefixed to backup directory names. Required.
- source_path
Path to recursively backup. Defaults to the buildout directory.
- database_engine
Type of database to backup. Supported options: mysql or postgres.
- database_name
Name of the database to backup.
- database_username
Username of the database to backup.
- database_password
Password of the database to backup.
- local_count
Number of backups to keep locally. As new backups are created older backups are deleted. Defaults to 3.
- local_storage_path
Local path in which to store backups. Make sure the user running the backup script has appropriate rights to this path. Required.
- remote_host
Hostname of remote host on which to mirror local backups.
- remote_storage_path
Remote path in which to store backups. Make sure the user running the backup script has appropriate rights to this path (via rsync).
Note: rsync functionality is limited to key based authentication. Make sure to setup your keys appropriately for passwordless remote authentication.
Full Example
The following example illustrates all available options:
[buildout] parts = backup [backup] recipe = praekelt.recipe.backup prefix = foobar local_count = 2 local_storage_path = /var/backups source_path = /var/foobar remote_host = www.my-backup-server.com remote_storage_path = /var/backups/foobar database_engine = postgres database_name = foobar_db database_username = db_username database_password = db_password
The resulting script will create timestamped backup folders prefixed with the string foobar locally in /var/backups. The backup will contain all the files found in /var/foobar as well as a database dump of the postgres database named foobar_db. A copy of each created backup will be sent to www.my-backup-server.com via rsync and stored in the /var/backups/foobar path. Only the latest 2 backups will be retained locally. Older backups will be deleted automatically.
Changelog
0.0.3
Complete refactor to use rsync.
0.0.2
Dereference symbolic links.
0.0.1
Initial Release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file praekelt.recipe.backup-0.0.3.tar.gz
.
File metadata
- Download URL: praekelt.recipe.backup-0.0.3.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9113f7003c892a78f6da183636026c0d1d2d7c0e959bedd222a633ef1216c1f8 |
|
MD5 | c9c49e9ed9c3ccacfa9d220fcd19e1e7 |
|
BLAKE2b-256 | 3226500a7bde3fe0ad0d53fc4d4d4340aa4b445f555cc54ae5c08680d79eef84 |
File details
Details for the file praekelt.recipe.backup-0.0.3-py2.6.egg
.
File metadata
- Download URL: praekelt.recipe.backup-0.0.3-py2.6.egg
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5566eaed0924ca193e7f07e01a038012b56107202c38914fc5b12375f815f2f9 |
|
MD5 | fdb42097867fae879494407728e1e432 |
|
BLAKE2b-256 | 07c47537d7cba077164b545a095c8ff383140206078c094a9afff5fff42510f9 |
File details
Details for the file praekelt.recipe.backup-0.0.3-py2.5.egg
.
File metadata
- Download URL: praekelt.recipe.backup-0.0.3-py2.5.egg
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e83f7c2636cce63bcd5d1100c17a32f9318570eb6cff133b078c33dcc48737a0 |
|
MD5 | bb0c6070446cac0508f9c4724d78cc69 |
|
BLAKE2b-256 | e66e9c342ac3a119b7c6077e791b09c1105468dd21cc3577ca4b387fffe1a0db |