@@ -5,19 +5,28 @@ const path = require("path");
55const fs = require ( "fs" ) ;
66const { uploadSketch, getAllSketches } = require ( "../controllers/sketchController" ) ;
77
8- const uploadDir = path . join ( __dirname , "../../uploads" ) ;
8+ let uploadDir ;
99
10- if ( ! fs . existsSync ( uploadDir ) ) {
10+ try {
11+ // Prefer creating uploads directory in the current working directory
12+ uploadDir = path . join ( process . cwd ( ) , "uploads" ) ;
13+ if ( ! fs . existsSync ( uploadDir ) ) {
1114 fs . mkdirSync ( uploadDir , { recursive : true } ) ;
15+ }
16+ } catch ( err ) {
17+ console . error ( "⚠️ Failed to create upload directory in project root. Falling back to /tmp:" , err ) ;
18+ uploadDir = "/tmp/uploads" ;
19+ fs . mkdirSync ( uploadDir , { recursive : true } ) ;
1220}
1321
22+ console . log ( "✅ Sketch uploads directory:" , uploadDir ) ;
23+
1424const storage = multer . diskStorage ( {
15- destination : ( req , file , cb ) => {
16- cb ( null , uploadDir ) ;
17- } ,
18- filename : ( req , file , cb ) => {
19- cb ( null , file . fieldname + "-" + Date . now ( ) + path . extname ( file . originalname ) ) ;
20- } ,
25+ destination : ( req , file , cb ) => cb ( null , uploadDir ) ,
26+ filename : ( req , file , cb ) => {
27+ const uniqueName = `${ file . fieldname } -${ Date . now ( ) } ${ path . extname ( file . originalname ) } ` ;
28+ cb ( null , uniqueName ) ;
29+ } ,
2130} ) ;
2231
2332const upload = multer ( { storage } ) ;
0 commit comments