【发布时间】:2021-06-22 04:24:18
【问题描述】:
场景:
我有一个 serverless/cloudformation 脚本,它将具有不同配置的相同代码作为 lambda 重新部署到 AWS,并通过 API Gateway 公开每个 lambda。
到目前为止,我能够做到这一点的唯一方法是在同一个脚本中进行大量复制和粘贴……但它开始让我陷入困境……因此,因为我是一个完整的人AWS 的新手,浏览 AWS 文档和互联网产生了非常糟糕的结果,在回答这个问题时......我在这里试试运气。
在 cloudformation 脚本中:
"Resources":{
"LambdaResourceNG":{
"Type":"AWS::Serverless::Function",
"Properties":{
"Handler":"some-handlername::foo::bar",
"Runtime":"dotnetcore2.0",
"Environment":{
"Variables":{
"PictureOptions__OriginalPictureSuffix":{
"Fn::Join":[
"",
[
"_",
"ng",
"_",
{
"Fn::FindInMap":[
"Environments",
{
"Ref":"EnvironmentValue"
},
"PictureOptionsOriginalPictureSuffix"
]
}
]
]
},
},
"Events":{
"Bar":{
"Type":"Api",
"Properties":{
"Path":"/ng/bar",
"Method":"POST"
}
},
"Foo":{
"Type":"Api",
"Properties":{
"Path":"/ng/foo",
"Method":"POST"
}
}
}
}
},
}
问题:
在上面的脚本块中..资源被称为LambdaResourceNG。如果我想拥有另一个资源...LambdaResourceKE...所有适当的部分都更改为KE。我将如何制作一个可以在这个 erm... 语言中重复使用的“功能”?
我已经发现了如何使用映射来根据一些 env 值交换变量...但是如何创建可重用的代码/配置块?
【问题讨论】:
标签: amazon-web-services aws-lambda amazon-cloudformation