如何在Custom CloudFormation资源中指定依赖项?

时间:2017-05-29 10:29:03

标签: amazon-cloudformation

创建自定义CloudFormation资源实现时,以后可以使用创建的资源将更多依赖子项“添加”到自身。

例如:

ResourceA:
  Type: Custom::Parent

ResourceB:
  Type: Custom::Child
  Properties:
    Parent: !Ref ResourceA

DependsOn添加到ResourceB是否足以确保在ResourceA收到Delete请求之前将其删除?像这样 -

ResourceB:
  DependsOn: ResourceA
  Type: Custom::Child
  Properties:
    Parent: !Ref ResourceA

ResourceA完成删除过程之前,是否会出现Delete收到ResourceB请求并失败的情况?

1 个答案:

答案 0 :(得分:1)

在这种情况下,您甚至不需要SqlDataSource.ID = "SqlDataSource";。由于您在B的属性中引用了A,因此cloudformation知道B对A具有依赖性,并且仅在创建A时才开始创建B. 对于删除,会发生相反的情况:首先删除B,然后删除A. 只有当其他资源不依赖于它时,Cloudformation才会删除资源。