Stand is a tool to perform directory backup and backup's generation management and restore.
$ curl https://raw.githubusercontent.com/shinofara/stand/master/bin/install.py | python
or
$ go install github.com/shinofara/stand
$ stand -conf /path/to/config.yml
or
$ stand -o /path/to/outputdir /path/to/target/dir
# /path/to/config.yml
type: dir # or file
path: "/path/to/target/1"
compression:
prefix: "prefix1"
format: zip # or tar
storages:
- type: local
path: "/path/to/output/1"
life_cycle: 1
or
# /path/to/config.yml
- type: file
path: "/path/to/file/path"
storages:
- path: "/path/to/local/directory"
life_cycle: 1
- type: dir
path: "/path/to/compress/target/directory"
compression:
prefix: sample # prefix_YYYYMMDDHHMiss.zip
format: zip # or tar
storages:
type: s3
path: "/path/to/s3/path"
life_cycle: 2
s3:
access_key_id: AKXXXXXXXXXXXX
secret_access_key: yXxxxxxxXXXXXXXXXXXXXXXX
region: "ap-northeast-1"
bucket_name: "backup_bucket_name"
- .
other settings
.
.
storages:
- s3:
access_key_id: AKXXXXXXXXXXXX
secret_access_key: yXxxxxxxXXXXXXXXXXXXXXXX
region: "ap-northeast-1"
bucket_name: "backup_bucket_name"
99 - WinZip AES
Only
$ 7z x xxxpx.zip
Would you like to replace the existing file:
Path: ./a
Size: 0 bytes
Modified: 2016-09-18 21:21:54
with the file from archive:
Path: a
Size: 0 bytes
Modified: 2016-09-18 21:21:54
Enter password (will not be echoed):
$ ls -la a
$ export AWS_ACCESS_KEY_ID=AKIXXXXXXXXXXXXXX
$ export AWS_SECRET_ACCESS_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
$ export AWS_DEFAULT_REGION=ap-northeast-1
Unit of life_cycle
is the number of files .
v Majors
. Minors
. Patches
Patch releases are defined as bug, performance, and security fixes. They do not change or add any public interfaces. They do not change the expected behavior of a given interface. They are meant to correct behavior when it doesn't match the documentation, without also introducing a change that makes seamless upgrades impossible.
Minors are the addition and refinements of APIs or subsystems. They do not change APIs or introduce backwards compatible breaking changes. These are mostly completely additive releases.
Majors contain changes in behavior that could potentially break code that worked in prior releases.
- Fork it
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create new Pull Request
MIT: LICENSE