코딩쪼렙 2022. 3. 3. 20:45
728x90

내 컴퓨터에서 작업한다면 multer s3 x

heroku에서 작업할 때만 multers3 사용하고 싶음

 

 

process.env.NODE_ENV ===heorku의 "production";

 

const isHeroku = process.env.NODE_ENV === "production";

const s3ImageUploader = multerS3({
    s3: s3,
    bucket: "youtube-cloning-site/images",
    acl: "public-read",
})
const s3VideoUploader = multerS3({
    s3: s3,
    bucket: "youtube-cloning-site/videos",
    acl: "public-read",
})

 

export const  avatarUpload = multer({ 
    dest:"uploads/avatars/",
    limits:{
        fileSize: 3000000,
    },
    storage: isHeroku ? s3ImageUploader : undefined ,
})
export const  videoUpload = multer({ 
    dest:"uploads/videos/" ,
    limits:{
        fileSize: 10000000,
    },
    storage: isHeroku ? s3VideoUploader : undefined ,
})

 

user와videoController 둘다

 

    const  isHeroku = process.env.NODE_ENV === "production";
    const updatedUser= await  User.findByIdAndUpdate(
        _id,
    {
        avatarUrl: file ? (isHeroku ? file.location : file.path) : avatarUrl,
        name,
        email,
        username,
        location,
    },