diff --git a/packages/medusa-file-s3/src/services/s3.js b/packages/medusa-file-s3/src/services/s3.js index 55960ad5cb..8c91f86bec 100644 --- a/packages/medusa-file-s3/src/services/s3.js +++ b/packages/medusa-file-s3/src/services/s3.js @@ -1,5 +1,6 @@ import fs from "fs" import aws from "aws-sdk" +import { parse } from "path" import { AbstractFileService } from "@medusajs/medusa" import stream from "stream" @@ -32,11 +33,14 @@ class S3Service extends AbstractFileService { } uploadFile(file, options = { isProtected: false, acl: undefined }) { + const parsedFilename = parse(file.originalname) + const fileKey = `${parsedFilename.name}-${Date.now()}${parsedFilename.ext}` + const params = { ACL: options.acl ?? (options.isProtected ? "private" : "public-read"), Bucket: this.bucket_, Body: fs.createReadStream(file.path), - Key: `${file.originalname}`, + Key: fileKey, } return new Promise((resolve, reject) => {