【发布时间】:2021-06-23 14:59:47
【问题描述】:
我正在按照this documentation 为 Cloudformation 自定义资源设计一个 AWS Lambda 函数。
创建自定义资源后,关联的 Lambda 函数应 (a) 创建外部资源,并 (b) 返回与该外部资源关联的 ID。
更新或删除自定义资源时,关联的 Lambda 函数应将现有外部资源的 ID 作为参数/属性,并相应地更新/删除该外部资源。
为此,CloudFormation 堆栈需要存储 Lambda 在创建自定义资源时返回的 ID。理想情况下,它还应该将该 ID 与自定义资源本身相关联。
如何做到这一点?
相关场景的示例代码:
Resources:
CustomResource:
Type: AWS::CloudFormation::CustomResource
Properties:
ServiceToken:
Fn::GetAtt: Lambda.Arn
ID: <see-below>
Lambda:
Type: AWS::Lambda::Function
Properties:
...
(其中ID在创建CustomResource之前不存在,但需要在创建时由Lambda的结果填充)
【问题讨论】:
标签: amazon-web-services aws-lambda amazon-cloudformation aws-cloudformation-custom-resource