Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/express42/glacier

LWRP for glacier backups
https://github.com/express42/glacier

chef cookbooks deep-learning

Last synced: 2 months ago
JSON representation

LWRP for glacier backups

Awesome Lists containing this project

README

        

Glacier Cookbook
======================

Install glacier-cmd utility and configure backups to glacier using glacier-cmd, tar and cron. It contains a LWRP for
describing glacier backups.

Requirements
------------

Tested only on Ubuntu 12.04, but should works on Debian too. Only works with [Express 42 crontab
cookbook](https://github.com/express42-cookbooks/crontab). You should remember to delete root's crontab entries when delete
glacier backups in chef.

LWRP
----

## glacier_static

glacier_static LWRP creates tasks for backuping static content. All cron tasks are belongs to root user.

### Actions


Action
Description


backup
Default action. Backups data.

### Attributes


Attribute
Description
Default


name
Name attribute. Name of the backup (required)



path
Path to backup (required)



time
Describe time of backup, same format as for crontab (Hash)
{ :minute => "0", :hour => "2", :day => "*", :month => "*", :weekday => "*" }


tempdir
Temporary backup dir
/home/backups/


aws_key
AWS key (required)



aws_secret
AWS secret(required)



vault
Glacier vault, should exists (required)



region
AWS region
us-west-2


full
Incremental or full backup (boolean)
false

### Examples
```ruby
glacier_static "backup-daily" do
path "/home/vagrant/"
aws_key 'my aws key'
aws_secret 'my aws secret'
vault 'backup'
time(:minute => "15", :hour => "4", :weekday => "1-6")
end

glacier_static "backup-weekly" do
path "/home/vagrant/"
aws_key 'my aws key'
aws_secret 'my aws secret'
vault 'backup'
time(:minute => "15", :hour => "4", :weekday => "7")
full true
end

```

Contributing
------------
1. Fork the repository on Github
2. Create a named feature branch (like `add_component_x`)
3. Write you change
4. Write tests for your change (if applicable)
5. Run the tests, ensuring they all pass
6. Submit a Pull Request using Github

License and Authors
-------------------
Author:: Ivan Evtuhovich

Copyright 2012-2013, Express 42, LLC