Only set backup storage options based on provider

This commit is contained in:
Johannes Zellner
2025-02-10 16:00:40 +01:00
parent 0aea814a23
commit a2fdefb6a6
2 changed files with 94 additions and 27 deletions
+6 -9
View File
@@ -52,20 +52,17 @@ function create() {
}
if (error || result.status !== 200) return [error || result];
// ensure we have objects
if (!result.body.mountOptions) result.body.mountOptions = {};
if (!result.body.limits) result.body.limits = {};
return [null, result.body];
},
async setConfig(config, limits) {
const data = Object.assign(config);
// some s3 provider need signatureVersion
const s3SignatureVersionV4Provider = ['exoscale-sos', 'wasabi', 'scaleway-objectstorage', 'linode-objectstorage', 'ovh-objectstorage', 'ionos-objectstorage', 'vultr-objectstorage', 'contabo-objectstorage', 'upcloud-objectstorage', 'hetzner-objectstorage'];
if (s3SignatureVersionV4Provider.indefOf(data.provider) !== -1) data.signatureVersion = 'v4';
if (data.provider === 'minio' || data.provider === 's3-v4-compat' || data.provider === 'contabo-objectstorage') data.s3ForcePathStyle = true;
let error, result;
try {
result = await fetcher.post(`${origin}/api/v1/backups/config/storage`, data, { access_token: accessToken });
result = await fetcher.post(`${origin}/api/v1/backups/config/storage`, config, { access_token: accessToken });
} catch (e) {
error = e;
}