Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install backup2swift

How to install backup2swift

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install backup2swift
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
Windows (64-bit)
Mac OS X (10.5+)
Linux (32-bit)
Linux (64-bit)
0.8 Available View build log
 
Author
License
GNU General Public License version 3
Dependencies
Lastest release
version 0.8 on Jan 9th, 2014

This tool is that backup data to OpenStack Swift. provides features are command line interface, and backup rotatition. This tool is depend on swiftsc, that is simple client library of OpenStack Swift.

Requirements

  • Python 2.6 later or Python 3.2 later
  • swiftsc 0.5 later

Setup

$ git clone https://github.com/mkouhei/backup2swift
$ cd backup2swift
$ sudo python setup.py install

or via PyPI:

$ virtualenv --no-site-packages venv
$ pip install backup2swift

Usage

Firstly setup configuration file. You may save the file name of your choice as setting. Example is as folloing:

[swift]
auth_url: https://example.org/auth/v1.0
username: username
password: password

[backup]
rotate_limit: 10

The "auth_url" is swift authentication url, "username" and "password" are swift's. If you need to ignore verification of SSL certification, append option as "ignore_verify_ssl_certification: True" to [swift] section. "rotate_limit" is limitation count of rotation for backup. If this value is 3, backup is as folloing;

backup target file name: example.txt

Firstly backup object is created as same name of backup target file (that is "example.txt"):

$ bu2sw -c bu2sw.conf -p example.txt
$ bu2sw -c bu2sw.conf -l
example.txt

Secondly backup object is created as same name of backup target file, and first backup object is renamed added timestamp as "example.txt_YYYYMMDD-hhmmss".:

$ bu2sw -c bu2sw.conf -p example.txt
$ bu2sw -c bu2sw.conf -l
example.txt
example.txt_20130510-113930

Backup objects named with timestamp are created until "rotate_limit" value. Old backup object is remove when execute backup over limitation.:

$ bu2sw -c bu2sw.conf -p example.txt
$ bu2sw -c bu2sw.conf -l
example.txt
example.txt_20130510-113930
example.txt_20130510-113941
example.txt_20130510-113953
$ bu2sw -c bu2sw.conf -p example.txt
$ bu2sw -c bu2sw.conf -l
example.txt
example.txt_20130510-113941
example.txt_20130510-113953
example.txt_20130510-114110

See also man manual of bu2sw(1).

Contribute

Firstly copy pre-commit hook script.:

$ cp -f utils/pre-commit.txt .git/hooks/pre-commit

Next install python2.6 later, and python-swiftsc, py.test. Below in Debian GNU/Linux Sid system,:

$ sudo apt-get install python python-swiftsc python-pytest pep8

Then checkout 'devel' branch for development, commit your changes. Before pull request, execute git rebase.

ToDo

  • create documents

History

0.8 (2013-07-27)
  • read the file from stdin pipe
  • Omitted option of --container
0.7 (2013-06-14)
  • support Python 3.2, 3.3
0.6 (2013-06-03)
  • support authentication of keystone
0.5 (2013-05-30)
  • New features
    • upload / retrieve / delete in parallel
    • support to delete multiple objects
  • Bug fix
    • fixes fail to raise IOError if default config file exists
    • fail to use "rotate_limit" option on configuration file
    • support pep8 less than version 1.3
0.4 (2013-05-29)
  • New features
    • support default config file
    • specify any container
    • support to retrieve multiple objects
    • specify multiple upload files
  • Bug fix
    • fixes spelling error
    • remove pychecker for travis
0.3.2 (2013-05-24)
  • fixes fail backup and rotate with verifing default SSL certificate
0.3.1 (2013-05-20)
  • add option to ignore verifing of SSL certificate
0.3 (2013-05-17)
  • add retrieve backup object command
0.2 (2013-05-10)
  • add backup object command
  • fixes man manual
0.1.3 (2013-05-10)
  • applied changing api of swiftsc.client.is_container()
  • add how to setup and usage
0.1.2 (2013-05-09)
  • fixes #3 failed to execute in python2.6
0.1.1 (2013-05-08)
  • fixes #1 fail to execute firstly when there is no container
0.1 (2013-05-08)
  • first release

Subscribe to package updates

Last updated Jan 9th, 2014

Download Stats

Last month:1

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.