-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Azure blob storage as backend #1149
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1149 +/- ##
==========================================
+ Coverage 52.71% 52.83% +0.12%
==========================================
Files 122 124 +2
Lines 11454 11728 +274
==========================================
+ Hits 6038 6197 +159
- Misses 4708 4807 +99
- Partials 708 724 +16
Continue to review full report at Codecov.
|
This is good work, thank you @diptadas again! And we need to switch to Go 1.8 at minimum, otherwise a library the Azure lib depends on won't compile. https://golang.org/doc/go1.8#net_http |
Environment variables: AZURE_ACCOUNT_NAME=storage-account-name AZURE_ACCOUNT_KEY=storage-account-key Environment variables for test: RESTIC_TEST_AZURE_ACCOUNT_NAME=storage-account-name RESTIC_TEST_AZURE_ACCOUNT_KEY=storage-account-key RESTIC_TEST_AZURE_REPOSITORY=azure:restic-test-container Init repository: $ restic -r azure:container-name:/prefix/dir init
i tested the implementation a little bit. works functionally fine. thank you very much for the merge and pull request :-) excellent work. i would like to mention one little thing: the contents of the buckets are different in s3 vs. azure layout. Example: if using s3 with repository address: RESTIC_REPOSITORY=s3:https://minio:9000/restic if using azure with repository address: RESTIC_REPOSITORY=azure:restic:/ don't know if this right - but in my mind the s3 implementation could be optimized here. Regarding the performance i got a 50mbit upload of files during the whole backup process. That maxed out my current internet connection and is on par with my current solution through minio in gateway mode. "check" and "prune" are also very fast - these functions seem to depend on the calling CPU owner. |
Yes, the default path within a bucket for s3 is (historically) |
Main work by @diptadas, thank you very much! Successor of #1059
TODO:
dep
Closes #609