Skip to main content

Easy and configurable backup tool

Project description

A simple backup utility. Configurable with a YAML file.

See backupper -h for command usage.

Allows you to manage backups and encrypt them. You can then use rclone to store them on a distant storage.

Installation

pip3 install backupper

Recommended minimum python version is 3.5. It won’t work with version 3.4 and older.

Configuration reference

Minimal backupfile.yml

backup_dir: /backup/root
artifacts:
    - a/file
    - a/directory
    - /another/directory/
    - et/caetera

backup_dir

  • Definition: specifies the folder in which the backup directory will be created. If the folder doesn’t exist, it will be created.

  • Type: relative or absolute path.

  • Mandatory: no, unless delete_old_backups is set to true.

  • Default value: current working directory.

delete_old_backups

  • Definition: allows you to delete old backups from the backup directory specified in backup_dir. If cleaning_policy isn’t set, all previous backups will be deleted.

  • Type: boolean.

  • Mandatory: no.

  • Default value: false.

cleaning_policy

  • Definition: allows you to define a fine-tuned deletion policy. Will do nothing if delete_old_backups is set to false.

  • Type: at least one of the following parameters.

  • Mandatory: no (if not set, all older backups will be deleted).

Each parameter below can be set (at least one). The following schema visually presents how they work, assuming this cleaning policy:

cleaning_policy:
    most_recents: 2
    first_daily: 1
    first_weekly: 6
    first_monthly: 4
such design wow

Backup management schema

N.B.: please keep in mind that if you increase one of the parameters between two backups, deleted backups won’t magically pop back from nowhere. We strongly advise you to be careful with these values.

most_recents

  • Definition: number of recent backups to keep (in addition to the current one).

  • Type: natural integer.

  • Mandatory: no.

  • Default value: 0.

first_daily

  • Definition: number of daily backups to keep (keeps the n first backups of the current day).

  • Type: natural integer.

  • Mandatory: no.

  • Default value: 0.

first_weekly

  • Definition: number of weekly backups to keep (keeps the n first backups of the current week).

  • Type: natural integer.

  • Mandatory: no.

  • Default value: 0.

first_monthly

  • Definition: number of monthly backups to keep (keeps the n first backups of the current month).

  • Type: natural integer.

  • Mandatory: no.

  • Default value: 0.

encrypt

  • Definition: specifies if the backup should be encrypted. Encryption is performed with GnuPG, so make sure it’s properly installed on your system.

  • Type: boolean.

  • Mandatory: no.

  • Default value: false.

gnupg

  • Definition: GnuPG configuration.

  • Type: a list of the following parameters.

  • Mandatory: yes, if encrypt is set to true.

home

  • Definition: GnuPG home (where keys are stored).

  • Type: string.

  • Mandatory: no.

  • Default value: ~/.gnupg.

keyid

  • Definition: GnuPG key identifier (it could be the key id, user id, key comment…).

  • Type: string.

  • Mandatory: yes.

artifacts

  • Definition: specifies a list of files and folders to backup.

  • Type: a list of absolute or relative paths.

  • Mandatory: yes.

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

backupper-0.3b1.tar.gz (35.6 kB view details)

Uploaded Source

Built Distribution

backupper-0.3b1-py2.py3-none-any.whl (16.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file backupper-0.3b1.tar.gz.

File metadata

  • Download URL: backupper-0.3b1.tar.gz
  • Upload date:
  • Size: 35.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for backupper-0.3b1.tar.gz
Algorithm Hash digest
SHA256 511450cbe8ecb032eacc5b22dbb59412dd6819f67ac665439ea2826cbdfc2ac4
MD5 55b5b65fd250a988234d8800c0963968
BLAKE2b-256 9ec50f86b9e6f5a1a6d7918b18dd326405d8b9854b5013667f4a97e88ac7dbbe

See more details on using hashes here.

File details

Details for the file backupper-0.3b1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for backupper-0.3b1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ded9190f4ac4ba89a86b6e5eaed9f2fd6ceaa10cea440608c175698d0341be7b
MD5 bc814184cac1ea289795acf7233724e4
BLAKE2b-256 0cd3ed7a1e083f2f986426dc33a08555d6e969a5aa772c2fd261616efb20d6d2

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