Skip to main content

Filesystem and database backup Buildout recipe.

Project description

Filesystem and database backup Buildout recipe.

Creates a bin/ script with which you can easily create backups of any path and/or database.

Usage

Add a part in buildout.cfg like so:

[buildout]
parts = backup

[backup]
recipe = praekelt.recipe.backup
archive_prefix = backmeup
local_location = /var/backup

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.

Note: The basic script created by the part specified above will create empty backups. To actually backup usefull data you need to enable path and/or database backups. See options below.

Options

archive_prefix

String prefixed to backup archive filenames. Required

database_enabled

Whether or not to include a database backup. Defaults to False

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.

path_enabled = True

Whether or not to recursively include a path in the backup. Defaults to False

path

Path to backup. Defaults to the buildout directory

local_count

Number of backups to keep locally. As new backups are created older backups are deleted. Defaults to 3

local_location

Local path in which to store backups. Also used as a sandbox when creating backups. Make sure the user running the backup script has appropriate rights to this path. Required

scp_enabled

Whether or not to send a copy of created backups to a remote location via scp. Default to False

Note: scp functionality is limited to key based authentication. Make sure to setup your keys appropriately for passwordless authentication.

scp_username

Remote scp login username.

scp_host

Remote scp hostname.

scp_path

Remote path in which to store backups.

Full Example

The following example illustrates all available options:

[buildout]
parts = backup

[backup]
recipe = praekelt.recipe.backup
archive_prefix = shop

database_enabled = True
database_engine = postgres
database_name = shop
database_username = admin
database_password = pass1word

path_enabled = True
path = /var/www

local_count = 2
local_location = /var/backups

scp_enabled = True
scp_username = admin
scp_host = 10.23.12.1
scp_path = /var/backups/shop

The resulting script will create backup archives prefixed with the string shop in /var/backups. The archive will contain all the files in /var/www as well as a database dump of the postgres database named shop. A copy of each created archive will be sent to 10.23.12.1 via scp and stored in the /var.backups/shop path. Only the latest 2 backups will be retained locally. Older backups will be deleted automatically.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

praekelt.recipe.backup-0.0.1.tar.gz (4.6 kB view details)

Uploaded Source

Built Distributions

praekelt.recipe.backup-0.0.1-py2.6.egg (8.9 kB view details)

Uploaded Source

praekelt.recipe.backup-0.0.1-py2.5.egg (8.9 kB view details)

Uploaded Source

File details

Details for the file praekelt.recipe.backup-0.0.1.tar.gz.

File metadata

File hashes

Hashes for praekelt.recipe.backup-0.0.1.tar.gz
Algorithm Hash digest
SHA256 e9bab77e41b4e24f1c968486a2f5d55579b5be802e972defbec3554eae62a491
MD5 99dbcf227f0b249e73dd10bc8cf87572
BLAKE2b-256 3ae3d68bf2f7d16d573cc385532743559f782a28f09e8d83ecedf089148be845

See more details on using hashes here.

File details

Details for the file praekelt.recipe.backup-0.0.1-py2.6.egg.

File metadata

File hashes

Hashes for praekelt.recipe.backup-0.0.1-py2.6.egg
Algorithm Hash digest
SHA256 09f3710c956d12ab832f19be88669d5433aa71b752eda1357aae478bd2621f76
MD5 7f997a827d21a1cc064982886f6b0595
BLAKE2b-256 5b304fd58700b321e333ba0cee2ec3f89480538b870ce7f82517664cb4b7d17b

See more details on using hashes here.

File details

Details for the file praekelt.recipe.backup-0.0.1-py2.5.egg.

File metadata

File hashes

Hashes for praekelt.recipe.backup-0.0.1-py2.5.egg
Algorithm Hash digest
SHA256 f5c09412141cd46a42a6c9e368920b133c142cf8f7b8f040cb1d0edcb8bf4f70
MD5 f68c0155abbcb9a783ef3aef8af9e88f
BLAKE2b-256 c915c2c9148c8be2d051b6a237edbdd51bdd31b0ca6953c8802ffb4ef37e39fd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page