From 1d2e029b542ec5fe9884c1b5cbaf00911288f535 Mon Sep 17 00:00:00 2001 From: deyvi-dev Date: Mon, 7 Apr 2025 20:23:33 -0300 Subject: [PATCH] feat(s3): add S3_SKIP_POLICY env variable to disable setBucketPolicy for incompatible providers --- src/api/integrations/storage/s3/libs/minio.server.ts | 6 +++--- src/config/env.config.ts | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/api/integrations/storage/s3/libs/minio.server.ts b/src/api/integrations/storage/s3/libs/minio.server.ts index 5a66305c..30c81876 100644 --- a/src/api/integrations/storage/s3/libs/minio.server.ts +++ b/src/api/integrations/storage/s3/libs/minio.server.ts @@ -63,9 +63,9 @@ const createBucket = async () => { if (!exists) { await minioClient.makeBucket(bucketName); } - - await setBucketPolicy(); - + if (!BUCKET.SKIP_POLICY) { + await setBucketPolicy(); + } logger.info(`S3 Bucket ${bucketName} - ON`); return true; } catch (error) { diff --git a/src/config/env.config.ts b/src/config/env.config.ts index 78ca891c..354951f9 100644 --- a/src/config/env.config.ts +++ b/src/config/env.config.ts @@ -251,6 +251,7 @@ export type S3 = { PORT?: number; USE_SSL?: boolean; REGION?: string; + SKIP_POLICY?: boolean; }; export type CacheConf = { REDIS: CacheConfRedis; LOCAL: CacheConfLocal }; @@ -555,6 +556,7 @@ export class ConfigService { PORT: Number.parseInt(process.env?.S3_PORT || '9000'), USE_SSL: process.env?.S3_USE_SSL === 'true', REGION: process.env?.S3_REGION, + SKIP_POLICY: process.env?.S3_SKIP_POLICY === 'true', }, AUTHENTICATION: { API_KEY: {