我想跟随 这些提示
并且只需重新部署我的功能 serverless.yml
没有改变。
但是,它只是挂在了 Serverless: Uploading function
阶段。永远,显然。
整个部署(与 sls deploy
虽然工作缓慢但仍然有效。
怎么可以调试这个,因为显然没有错误信息?
编辑
我用的时候 sls deploy
我的项目需要大约4分钟和15秒才能部署。
对我来说似乎相当长,所以我想我会用 sls deploy function -f myFunction
相反,这应该更快。
但是,当我尝试 sls deploy function -f myFunction
,它似乎只是永远挂在上面 Serverless: Uploading function: myFunction
。
我不知道如何调试。
似乎使用'详细',用 Serverless: Uploading function: myFunction --verbose
没有区别,返回的消息是相同的。
我将尝试等待,看看最终功能部署是否完成......
好吧,我等了,它没有:大约8分30秒后我得到以下错误信息:
无服务器错误--------------------------------------- 连接在120000ms后超时 得到支持 - - - - - - - - - - - - - - - - - - - - - - 文档:docs.serverless.com 错误:github.com/serverless/serverless/issues 论坛:forum.serverless.com 聊天:gitter.im/serverless/serverless 您的环境信息----------------------------- 操作系统:linux 节点版本:7.10.0 无服务器版本:1.20.2
另一个奇怪的是:当悬挂时,它显示:
无服务器:上传功能:myFunction(12.05 MB)...
但是函数本身只有3.2 kB,并且不包含任何包。
我用的时候 sls deploy
,显示的大小是相同的:
无服务器:将服务.zip文件上传到S3(12.05 MB)...
我的功能部署有什么问题?
编辑2
正如@dashmug暗示的那样,有一个配置问题 serverless.yml
。
在里面 functions
我的无服务器项目的目录,我想有一个共同点 package.json
和 node_modules
。然后每个函数可以根据需要导入模块。
我试着跟着 官方指南。
我的 serverless.yml
是这样的:
functions:
myFunction:
package:
exclude:
- 'functions/node_modules/**'
- '!functions/node_modules/module1_I_want_to_include/**'
- '!functions/node_modules/module2_I_want_to_include/**'
现在,我得到了 sls deploy
:
无服务器:将服务.zip文件上传到S3(31.02 MB)...
和功能工作:)
然而,随着 sls deploy function -f myFunction
,我得到:
无服务器:上传功能:调度(1.65 MB)...
它确实在合理的时间上传,但该函数现在给出以下错误:
无法导入模块'functions / myFunction':错误