【发布时间】:2019-12-15 15:48:55
【问题描述】:
我正在使用 AWS CodeBuild 部署一个用 Python 编写的无服务器 (SLS) 函数的项目。
部署在代码构建中运行良好。它成功创建了函数,我可以在 Lambda AWS UI 中查看 lambda。每当触发该功能时,我都会收到以下错误:
Runtime.ImportModuleError: Unable to import module 'some/function': attempted relative import with no known parent package
这非常令人沮丧,因为我知道该函数存在于上面列出的那个目录中。在 CodeBuild 脚本期间,我可以 ls 进入该目录并确认它确实存在。该函数在我的 serverless.yml 文件中定义如下:
functions:
file-blaster:
runtime: python3.7
handler: some/function.function_name
events:
- existingS3:
bucket: some_bucket
events:
- s3:ObjectCreated:*
rules:
- prefix: ${opt:stage}/some/prefix
很遗憾,我无法破解这个。有没有人在云端使用 SLS 和 python 时有过类似的经历?
SLS 会成功构建和部署似乎很奇怪,但 Lambda 本身却找不到该函数。
【问题讨论】:
标签: python python-3.x lambda serverless-framework