From b6c08cbbfe611871b57a074d5551a9acc99e5225 Mon Sep 17 00:00:00 2001 From: IgorKhomenko <70977170+IgorKhomenko@users.noreply.github.com> Date: Tue, 28 Mar 2023 13:23:44 +0300 Subject: [PATCH] fix(medusa-file-s3): Update key formation to use timestamp (#3601) * Update medusa-file-s3 key formation to use timestamp * added missing import --------- Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com> --- packages/medusa-file-s3/src/services/s3.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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) => {