summaryrefslogtreecommitdiff
path: root/src/services/drive/s3.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/services/drive/s3.ts')
-rw-r--r--src/services/drive/s3.ts8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/services/drive/s3.ts b/src/services/drive/s3.ts
index 2cbeef106d..abe3c166a5 100644
--- a/src/services/drive/s3.ts
+++ b/src/services/drive/s3.ts
@@ -1,8 +1,12 @@
import * as S3 from 'aws-sdk/clients/s3';
import { Meta } from '../../models/entities/meta';
-import { httpsAgent, httpAgent } from '../../misc/fetch';
+import { getAgentByUrl } from '../../misc/fetch';
export function getS3(meta: Meta) {
+ const u = meta.objectStorageEndpoint != null
+ ? `${meta.objectStorageUseSSL ? 'https://' : 'http://'}${meta.objectStorageEndpoint}`
+ : `${meta.objectStorageUseSSL ? 'https://' : 'http://'}example.net`;
+
return new S3({
endpoint: meta.objectStorageEndpoint || undefined,
accessKeyId: meta.objectStorageAccessKey!,
@@ -11,7 +15,7 @@ export function getS3(meta: Meta) {
sslEnabled: meta.objectStorageUseSSL,
s3ForcePathStyle: !!meta.objectStorageEndpoint,
httpOptions: {
- agent: meta.objectStorageUseSSL ? httpsAgent : httpAgent
+ agent: getAgentByUrl(new URL(u), !meta.objectStorageUseProxy)
}
});
}