I want to be the fastest way to concurrently sync files and directories to/from S3.
Gosync will concurrently transfer your files to and from S3 (or across different S3 buckets). It will validate checksyms to ensure that only new or changed files are synced.
Ensure you have Go 1.2 or greater installed and your GOPATH is set.
Clone the repo:
go get github.com/rotundasoftware/gosync
Change into the gosync directory and run make:
cd $GOPATH/src/github.com/rotundasoftware/gosync/
make
Set environment variables (Security Token is optional):
AWS_ACCESS_KEY_ID=xxx
AWS_ACCESS_KEY_SECRET=yyy
AWS_SECURITY_TOKEN=xxx
gosync OPTIONS SOURCE TARGET
gosync /files s3://bucket/files
gosync s3://bucket/files /files
gosync s3://source_bucket s3://target_bucket
gosync s3://source_bucket/dir s3://target_bucket/another_dir
For full list of options and commands:
gosync -h
- 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