Unable to s3

I am seeing below error in console

{"status":"500","message":"s3.uploadFile: path is required.","stack":"Error: s3.uploadFile: path is required.\n    at App.parseRequired (/opt/node_app/lib/core/app.js:606:19)\n    at App.putFile (/opt/node_app/lib/modules/s3.js:59:40)\n    at App._exec (/opt/node_app/lib/core/app.js:568:57)\n    at App._exec (/opt/node_app/lib/core/app.js:535:28)\n    at runMicrotasks (<anonymous>)\n    at processTicksAndRejections (internal/process/task_queues.js:97:5)\n    at async App.exec (/opt/node_app/lib/core/app.js:504:9)\n    at async App.define (/opt/node_app/lib/core/app.js:494:9)"}

The Upload step is outputting the correctly, but the s3 putFile step is throwing this error for unknown reasons.
Environment - Nodejs
Mac m1

"/opt/node_app/node_modules/@aws-sdk/client-s3/dist-cjs/protocols/Aws_restXml.js:20\n    let resolvedPath = `${basePath?.endsWith(\"/\") ? basePath.slice(0, -1) : basePath || \"\"}` + \"/{Key+}\";\n                                   ^\n\nSyntaxError: Unexpected token '.'\n    at wrapSafe (internal/modules/cjs/loader.js:915:16)\n    at Module._compile (internal/modules/cjs/loader.js:963:27)\n    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)\n    at Module.load (internal/modules/cjs/loader.js:863:32)\n    at Function.Module._load (internal/modules/cjs/loader.js:708:14)\n    at Module.require (internal/modules/cjs/loader.js:887:19)\n    at require (internal/modules/cjs/helpers.js:74:18)\n    at Object.<anonymous> (/opt/node_app/node_modules/@aws-sdk/client-s3/dist-cjs/commands/AbortMultipartUploadCommand.js:8:23)\n    at Module._compile (internal/modules/cjs/loader.js:999:30)\n    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)"

The error says that the path option is missing or at least no value is passed to it. Perhaps you could provide a bit more information on your implementation, from what I understand you have a file upload first and the use the uploaded file to upload it also to the s3 bucket.

I had a similar problem today. Mine was the S3 connector doesn’t work with node 12 anymore. Needed to change this to node 14 in project settings. Then redeployed and it all worked again.

2 Likes

Jamie, thank you for the solution! You saved my day