SB *_* D 7 amazon-web-services aws-lambda
我有带有API网关触发器的AWS Lambda函数。我想用相同的触发器创建相同的lambda函数。我该怎么做?创建版本时,我看到api网关未复制并且无法更改代码。
我是AWS Lambda的新手
Emm*_*uel 18
编辑 lambda 函数时,您可以转到操作 > 导出函数 > 下载部署包。
这将下载函数的 .zip 文件。
然后创建一个新的 Lambda,然后转到“上传自”(代码编辑器正上方)>“.zip 文件”
这会复制代码和 npm 模块等...虽然不是函数的触发器或权限。
没有提供复制/克隆Lambda函数和API网关配置的函数。您将需要从头开始创建新的新功能。
如果您打算将来必须重复使用功能,则值得使用AWS CloudFormation创建Lambda函数。然后,您将来可以轻松部署更多。
不幸的是,AWS Web 控制台和命令行工具都没有在服务中复制功能的功能。
这是一个明显的疏忽,使得看似简单的事情变得困难,例如从“模板”函数创建新函数或通过创建具有不同名称的副本来重命名函数(这也是不可能直接实现的)。
我发现完成这项工作的最简单方法是创建一个复制其他函数的 Lambda 函数。
下面的Python do_duplicate_function.py
3 函数代码可以部署到 Lambda,或者在本地运行,以复制您的 AWS 账户中的函数。
要使用它,请在 AWS 控制台中配置测试事件,或者使用至少包含以下内容的事件数据调用该函数:
{
"SourceFunctionName": "function_name_to_copy",
"FunctionName": "function_name_to_create"
}
Run Code Online (Sandbox Code Playgroud)
其中SourceFunctionName
是要复制的函数的名称,
FunctionName
是要创建的函数的名称。
函数代码本身的顶部有更多关于如何使用和部署它的文档,请参阅代码以了解详细信息。
注意:我已将其单独写在这篇迷你帖子中,您还可以在其中获取do_duplicate_function.py 函数代码文件。在那里检查最新版本。我也将所有内容都放在这里,因此这个答案将是完整且独立的。
{
"SourceFunctionName": "function_name_to_copy",
"FunctionName": "function_name_to_create"
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5479 次 |
最近记录: |