我正在尝试使用serverless+serverlesspython需求插件将函数部署到AWS。你知道吗
函数正在上使用包要求.txt指向github存储库(它是下载的,我的IDE在我的venv上找到它)。你知道吗
当我推动工件来部署它时,我触发一个使用它的函数,得到一个
Unable to import module '<implementing_function>': No module named '<home-made package>'
如果我从S3下载工件,我会看到directory+内容在那里,我已经检查并重新检查了setup.py
和__init__.py
文件,以确保没有遗漏任何内容。你知道吗
这是为了摆脱传统的git子模块方法。你知道吗
我错过了什么?你知道吗
编辑:这些是工件的内容:
total 192
drwxr-xr-x@ 10 user staff 320 Nov 21 10:21 Cerberus-1.2.dist-info
drwxr-xr-x@ 11 user staff 352 Nov 21 10:21 Jinja2-2.10.dist-info
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 MarkupSafe-1.1.1.dist-info
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 PyYAML-5.1.2.dist-info
drwxr-xr-x@ 7 user staff 224 Nov 21 10:21 args-0.1.0.dist-info
-rw-r--r--@ 1 user staff 9316 Jan 1 2098 args.py
drwxr-xr-x@ 17 user staff 544 Nov 21 10:21 bin
drwxr-xr-x@ 15 user staff 480 Nov 21 10:21 boto3
drwxr-xr-x@ 9 user staff 288 Nov 21 10:21 boto3-1.9.0.dist-info
drwxr-xr-x@ 42 user staff 1344 Nov 21 10:21 botocore
drwxr-xr-x@ 9 user staff 288 Nov 21 10:21 botocore-1.12.253.dist-info
drwxr-xr-x@ 7 user staff 224 Nov 21 10:21 cached_property-1.5.1.dist-info
-rw-r--r--@ 1 user staff 4277 Jan 1 2098 cached_property.py
drwxr-xr-x@ 10 user staff 320 Nov 21 10:21 cerberus
drwxr-xr-x@ 7 user staff 224 Nov 21 10:21 certifi
drwxr-xr-x@ 9 user staff 288 Nov 21 10:21 certifi-2019.9.11.dist-info
drwxr-xr-x@ 43 user staff 1376 Nov 21 10:21 chardet
drwxr-xr-x@ 10 user staff 320 Nov 21 10:21 chardet-3.0.4.dist-info
drwxr-xr-x@ 11 user staff 352 Nov 21 10:21 clint
drwxr-xr-x@ 11 user staff 352 Nov 21 10:21 clint-0.5.1.dist-info
drwxr-xr-x@ 20 user staff 640 Nov 21 10:21 corporate_ops_utils
drwxr-xr-x@ 6 user staff 192 Nov 21 10:21 corporatebot
drwxr-xr-x@ 14 user staff 448 Nov 21 10:21 dateutil
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 docopt-0.6.2.dist-info
-rw-r--r--@ 1 user staff 19946 Jan 1 2098 docopt.py
drwxr-xr-x@ 17 user staff 544 Nov 21 10:21 docutils
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 docutils-0.15.2.dist-info
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 ec2_metadata-2.0.0.dist-info
-rw-r--r--@ 1 user staff 8561 Jan 1 2098 ec2_metadata.py
drwxr-xr-x@ 11 user staff 352 Nov 21 10:21 idna
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 idna-2.8.dist-info
drwxr-xr-x@ 30 user staff 960 Nov 21 10:21 jinja2
drwxr-xr-x@ 11 user staff 352 Nov 21 10:21 jmespath
drwxr-xr-x@ 10 user staff 320 Nov 21 10:21 jmespath-0.9.4.dist-info
drwxr-xr-x@ 9 user staff 288 Nov 21 10:21 markupsafe
-rw-r--r--@ 1 user staff 338 Jan 1 1980 ops-slack-bot.iml
drwxr-xr-x@ 9 user staff 288 Nov 21 10:21 python_dateutil-2.8.1.dist-info
drwxr-xr-x@ 21 user staff 672 Nov 21 10:21 requests
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 requests-2.22.0.dist-info
-rw-r--r--@ 1 user staff 134 Jan 1 2098 requirements.txt
drwxr-xr-x@ 16 user staff 512 Nov 21 10:21 s3transfer
drwxr-xr-x@ 9 user staff 288 Nov 21 10:21 s3transfer-0.1.13.dist-info
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 six-1.13.0.dist-info
-rw-r--r--@ 1 user staff 33045 Jan 1 2098 six.py
drwxr-xr-x@ 16 user staff 512 Nov 21 10:21 urllib3
drwxr-xr-x@ 8 user staff 256 Nov 21 10:21 urllib3-1.25.7.dist-info
drwxr-xr-x@ 20 user staff 640 Nov 21 10:21 yaml
我的自定义包位于corporate_ops_utils
目录中,包名为corporate-ops-utils
。你知道吗
我的函数的入口点/处理程序是corporatebot/backend_operation_message.receive
,引发导入错误的文件是corporatebot.backend_operation_message
。因为event_receive
和frontend_operation_message_receive
不使用这个定制包,所以它们可以正常工作。你知道吗
在serverless.yml
中,定义了三个函数:
functions:
event_receive:
handler: corporatebot/event.receive
timeout: 3 # optional, in seconds, default is 6
memorySize: 128
events:
- http:
path: event/receive
method: post
cors: true
frontend_operation_message_receive:
handler: corporatebot/frontend_operation_message.receive
timeout: 30 # optional, in seconds, default is 6
memorySize: 128
backend_operation_message_receive:
handler: corporatebot/backend_operation_message.receive
timeout: 30 # optional, in seconds, default is 6
memorySize: 128
目前没有回答
相关问题 更多 >
编程相关推荐