问题描述
如何在CloudFormation模板中设置条件,即如果存在某个S3存储桶(存储桶将具有DeletionPolicy:保留),或者如果不存在该存储桶,则应使用该S3存储桶。
导入资源将无法正常工作,因为在第一次创建堆栈时就不会出现存储桶。
解决方法
普通的CloudFormation中没有没有这种功能。唯一的选择是使用custom resource。
这是一种特殊类型的资源,您必须自己开发。这主要是通过 Lambda函数完成的。因此,您的模板将使用自定义资源形式的lambda函数来创建/检查给定存储桶是否存在。