This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Selectively purge daily full backups

Project Description

Lists files in that should be purged in a backup strategy where daily backups are kept for DAYS days, monthly backups for MONTHS months and yearly backups for YEARS years. Monthly and yearly backups are always the oldest possible daily backup (e.g. first of month and first of year that is available).

Files are expected to have their date embedded as YYYY-MM-DD somewhere in the filename, e.g. homedir-2013-03-31.tgz

For monthly and yearly backups, the first day available will be kept (e.g. January 1st for yearly, but if that is not available, January 2nd will be kept, etc..).

This program can be used together with xargs(1) from GNU findutils:

backuppurge --print0 /var/backups/ | xargs -r -0 rm

Only files directly in the specified DIRECTORY will be searched (in the above example, /var/backups/homedir-2013-03-31.tgz will be considered, but not /var/backups/etc/etc-2013-03-31.tgz). This prevents accidental deletion of files. If –include-directories (-D) is used, directories directly below the path will be included in the search (e.g. the directory /var/backups/etc-2015-07-24/ will be included in the purge search).

This script assumes daily backups are FULL backups, not incremental. For example, a full daily backup of your /etc can be created by adding (crontab -e) a command like the following to your crontab(5) file:

tar czf /var/backups/etc/etc-$(date +%F).tgz /etc
Release History

Release History

This version
History Node

1.0.4

History Node

1.0.3

History Node

1.0.2

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
backuppurge-1.0.4.tar.gz (10.3 kB) Copy SHA256 Checksum SHA256 Source Nov 30, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting