无法部署NodeJS AWS Lambda函数。 Object.fs.openSync错误
所以直到几天前,我曾经通过一个简短的shell脚本来部署Node.JS AWS Lambda函数,效果很好。
现在,我不知道为什么或做了什么不同的工作,但是由于某种原因,在每次部署lambda函数后,通过Alexa调用该函数时,都会出现以下错误:
19:47:58
module initialization error Error
module initialization error
Error
19:47:59
START RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d Version: $LATEST
START RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d Version: $LATEST
19:47:59
module initialization error: Error at Object.fs.openSync (fs.js:646:18)
at Object.fs.readFileSync (fs.js:551:33)
at Object.Module._extensions..js (module.js:662:20)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
module initialization error: Error
at Object.fs.openSync (fs.js:646:18)
at Object.fs.readFileSync (fs.js:551:33)
at Object.Module._extensions..js (module.js:662:20)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
19:47:59
END RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d
19:47:59
REPORT RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d
Duration: 218.74 ms Billed Duration: 300 ms
Memory Size: 128 MB Max Memory Used: 20 MB
REPORT RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d
Duration: 218.74 ms Billed Duration: 300 ms
Memory Size: 128 MB Max Memory Used: 20 MB
现在出现了真正使我无能为力的解决方案的部分(我想它可能是Mac上的本地文件)。如果我从Lambda函数下载/导出以前可以使用的部署程序包,并且直接重新上传Zip文件,则可以使用。
如果我将文件解压缩并再次重新压缩,则会出现错误
无需我更改任何代码。那就是什么让我想知道Mac或文件系统上的压缩是否有问题?
我正在通过nvm使用Mac OSX High Sierra,节点6.10 / 8.10。 lambda上的代码在6.10和8.10上运行
任何建议,感激:)
编辑:上次工作的提交是在Windows PC上完成的。。。我有点担心文件系统的更改是否以某种方式破坏了压缩/上传。我将尝试并对此进行更深入的研究。
回答如下:我们正在将代码的.zip存档上传到AWS Lambda。
对我们来说,问题在于.zip文件中的文件没有世界可读的权限。
无法部署NodeJS AWS Lambda函数。 Object.fs.openSync错误
所以直到几天前,我曾经通过一个简短的shell脚本来部署Node.JS AWS Lambda函数,效果很好。
现在,我不知道为什么或做了什么不同的工作,但是由于某种原因,在每次部署lambda函数后,通过Alexa调用该函数时,都会出现以下错误:
19:47:58
module initialization error Error
module initialization error
Error
19:47:59
START RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d Version: $LATEST
START RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d Version: $LATEST
19:47:59
module initialization error: Error at Object.fs.openSync (fs.js:646:18)
at Object.fs.readFileSync (fs.js:551:33)
at Object.Module._extensions..js (module.js:662:20)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
module initialization error: Error
at Object.fs.openSync (fs.js:646:18)
at Object.fs.readFileSync (fs.js:551:33)
at Object.Module._extensions..js (module.js:662:20)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
19:47:59
END RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d
19:47:59
REPORT RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d
Duration: 218.74 ms Billed Duration: 300 ms
Memory Size: 128 MB Max Memory Used: 20 MB
REPORT RequestId: 596b2724-68f9-11e8-aaa7-d9ff3044ed9d
Duration: 218.74 ms Billed Duration: 300 ms
Memory Size: 128 MB Max Memory Used: 20 MB
现在出现了真正使我无能为力的解决方案的部分(我想它可能是Mac上的本地文件)。如果我从Lambda函数下载/导出以前可以使用的部署程序包,并且直接重新上传Zip文件,则可以使用。
如果我将文件解压缩并再次重新压缩,则会出现错误
无需我更改任何代码。那就是什么让我想知道Mac或文件系统上的压缩是否有问题?
我正在通过nvm使用Mac OSX High Sierra,节点6.10 / 8.10。 lambda上的代码在6.10和8.10上运行
任何建议,感激:)
编辑:上次工作的提交是在Windows PC上完成的。。。我有点担心文件系统的更改是否以某种方式破坏了压缩/上传。我将尝试并对此进行更深入的研究。
回答如下:我们正在将代码的.zip存档上传到AWS Lambda。
对我们来说,问题在于.zip文件中的文件没有世界可读的权限。