使用Visual Studio的AWS工具插件,如何将Lambda函数批量上传到AWS?
我有一个包含两个定义单独lambda函数的函数的项目。 AWS Lambda的上下文菜单似乎只允许一次发布一个函数。你可以想象,这是一个可维护性的噩梦。
它生成的json配置文件没有任何答案,因为它看起来非常扁平,并且一次只允许一个函数:
"region" : "us-west-2",
"configuration" : "Release",
"framework" : "netcoreapp1.0",
"function-runtime" : "dotnetcore1.0",
"function-memory-size" : 256,
"function-timeout" : 5,
"function-handler" : "LambdaSamples::LambdaSamples.SampleFunction::HelloWorld",
"function-name" : "HelloWorld",
"function-role" : "lambda_basic_execution",
"environment-variables" : ""
答案 0 :(得分:1)
名为“AWS Lambda Project”的Visual Studio项目专为单个Lambda函数而设计。
因此,如果您的解决方案有多个项目,并且您希望一次性部署它们,那么最好通过脚本/命令行来完成它。
新项目向导生成的Readme.md
文件包含有关使用dotnet lambda deploy-function
按命令行部署的说明。
答案 1 :(得分:0)
通常,我会为每种想要的发行版创建一个选项文件,像这样(新文件是aws-options-live.json,并且具有与我的实时环境有关的特定名称/ env变量):
然后在主解决方案文件夹之外的Deploy文件夹中的批处理文件中使用以下内容:
echo off
cd ..\ApiGatewayLambda
dotnet lambda deploy-function -cfg aws-options-live.json
set /p asd="Hit enter to continue"
然后,您可以将多个上传链接在一起/进行错误检查等,从而获得所需的智能。
您仍然可以右键单击该项目,然后选择Public to AWS Lambda-它将使用aws-lambda-tools-defaults.json文件发布该功能。