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:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user