1
0
mirror of https://github.com/gilbertchen/duplicacy synced 2025-12-18 01:03:25 +00:00

Added semi-dedicated Wasabi storage module. #322

This commit is contained in:
Mark Feit
2018-01-16 22:06:11 -05:00
parent 0670f709f3
commit d0771be2dd
3 changed files with 225 additions and 2 deletions

View File

@@ -461,6 +461,38 @@ func CreateStorage(preference Preference, resetPassword bool, threads int) (stor
SavePassword(preference, "s3_secret", secretKey)
return storage
} else if matched[1] == "wasabi" {
region := matched[2]
endpoint := matched[3]
bucket := matched[5]
key := GetPassword(preference, "wasabi_key",
"Enter Wasabi key:", true, resetPassword)
secret := GetPassword(preference, "wasabi_secret",
"Enter Wasabi secret:", true, resetPassword)
storageDir := ""
if strings.Contains(bucket, "/") {
firstSlash := strings.Index(bucket, "/")
storageDir = bucket[firstSlash+1:]
bucket = bucket[:firstSlash]
}
storage, err := CreateWasabiStorage(region, endpoint,
bucket, storageDir, key, secret, threads)
if err != nil {
LOG_ERROR("STORAGE_CREATE", "Failed to load the S3 storage at %s: %v", storageURL, err)
return nil
}
SavePassword(preference, "key", key)
SavePassword(preference, "secret", secret)
return storage
} else if matched[1] == "dropbox" {
storageDir := matched[3] + matched[5]
token := GetPassword(preference, "dropbox_token", "Enter Dropbox access token:", true, resetPassword)