please forgive me, I am totally new at Lambda and Node.
I am trying to replicate this git to order a pizza using an AWS IoT button.
My current code is:
<
I had the same issue and got it solved by the following the below steps
cd foldername
zip -r foldername.zip *
Say in Javascript file a.js
var func = function(){
}
export.func = func ;
In index.js
var a = require('a.js')
exports.handler(event, context, callback){
a.func
}
What worked for me was to zip the following files and upload the zip(after doing npm install in the folder):
Ran into this problem as well. What solved it for me was realizing that the file path was too long on a Windows machine. After zipping, I realized that the contents of node_modules was empty. I copied the files for zipping to a higher level path e.g. C:\User\ and zipped the specified files. Hope this helps!
In our case, it is neither path or permission issue. We got this error because we do npm prune --production
before we deploy, and we have some runtime packages that is incorrectly placed under devDependencies
which get wiped out during that phase. Unfortunately the lambda only gives a vague error message.
In my case, i mentioned Handler
as index.handler
but my root filename is app.js
. Changing this to index.js
worked.
Also make sure the zip file has your index.js, node_modules and package.json
directly.
Should be:
zip file --> index.js
package.json
node_modules
Not
zip file --> some_folder_name --> index.js
package.json
node_modules
It was a permission issue for me, after I changed the permissions for the 'node_modules' folder to 777, zipped and uploaded it, it worked.