我正在使用travis-ci部署lambda函数。我已经根据lambda部署创建了.travis.yml
文件,请参见下面的文件内容。
language: generic
deploy:
provider: lambda
function_name: MyFunction
region: us-east-1
role: correct_roleid
runtime: python3.6
handler_name: lambda/testfile.lambda_handler
access_key_id: key_id
secret_access_key:
secure: secret
我项目的文件夹结构:
| .editorconfig
| .gitignore
| .travis.yml
---lambda
testfile.py
部署后,在Handler
字段中,我具有index.lambda/testfile.lambda_handler
值。
我的问题:
如何说Travis-ci使用精确值,我在.travis.yml
文件中设置了该值?
handler_name
需要是函数名称。您还应该设置module_name
(请参阅文档(。
module_name :可选。导出处理程序的模块的名称。默认为
index
。
所以尝试类似:
module_name: lambda/testfile
handler_name: lambda_handler
如果那不起作用,请尝试在lambda
文件夹中创建__init__.py
。如果那不起作用,请尝试将lambda_handler.py
移至根文件夹。您可以从文件夹中导入文件以保持有组织的文件结构。