diff --git a/src/backups.js b/src/backups.js
index 97f40cd64..3b17e2692 100644
--- a/src/backups.js
+++ b/src/backups.js
@@ -101,6 +101,7 @@ function api(provider) {
case 'filesystem': return require('./storage/filesystem.js');
case 'minio': return require('./storage/s3.js');
case 's3-v4-compat': return require('./storage/s3.js');
+ case 'digitalocean-spaces': return require('./storage/s3.js');
case 'exoscale-sos': return require('./storage/s3.js');
case 'noop': return require('./storage/noop.js');
default: return null;
diff --git a/webadmin/src/views/settings.html b/webadmin/src/views/settings.html
index 26052737f..7bbf7e4f1 100644
--- a/webadmin/src/views/settings.html
+++ b/webadmin/src/views/settings.html
@@ -336,7 +336,7 @@
{{ backupConfig.backupFolder }}
- {{ backupConfig.bucket + '/' + backupConfig.prefix }}
+ {{ backupConfig.bucket + '/' + backupConfig.prefix }}
{{ backupConfig.region + ' ' + backupConfig.bucket + '/' + backupConfig.prefix }}
diff --git a/webadmin/src/views/settings.js b/webadmin/src/views/settings.js
index a01e9de32..d5312b014 100644
--- a/webadmin/src/views/settings.js
+++ b/webadmin/src/views/settings.js
@@ -42,6 +42,7 @@ angular.module('Application').controller('SettingsController', ['$scope', '$loca
$scope.storageProvider = [
{ name: 'Amazon S3', value: 's3' },
+ { name: 'DigitalOcean Spaces', value: 'digitalocean-spaces' },
{ name: 'Exoscale SOS', value: 'exoscale-sos' },
{ name: 'Filesystem', value: 'filesystem' },
{ name: 'Minio', value: 'minio' },
@@ -296,7 +297,7 @@ angular.module('Application').controller('SettingsController', ['$scope', '$loca
};
$scope.s3like = function (provider) {
- return provider === 's3' || provider === 'minio' || provider === 's3-v4-compat' || provider === 'exoscale-sos';
+ return provider === 's3' || provider === 'minio' || provider === 's3-v4-compat' || provider === 'exoscale-sos' || provider === 'digitalocean-spaces';
};
$scope.configureBackup = {
@@ -369,8 +370,10 @@ angular.module('Application').controller('SettingsController', ['$scope', '$loca
backupConfig.endpoint = 'https://sos.exo.io';
backupConfig.region = 'us-east-1';
backupConfig.signatureVersion = 'v2';
+ } else if (backupConfig.provider === 'digitalocean-spaces') {
+ backupConfig.endpoint = 'https://nyc3.digitaloceanspaces.com';
+ backupConfig.region = 'us-east-1';
}
-
} else if (backupConfig.provider === 'filesystem') {
backupConfig.backupFolder = $scope.configureBackup.backupFolder;
}