【发布时间】:2020-12-01 12:58:07
【问题描述】:
对于资源标记为“removalPolicy: cdk.RemovalPolicy.RETAIN”的已部署堆栈,cdk destroy - 将尝试删除这些资源 AWS 控制台 CloudFormation - 将提供在跳过保留救援时销毁堆栈的选项。 如何使用 CDK 完成此任务?怎么样?
谢谢
【问题讨论】:
标签: amazon-web-services amazon-cloudformation aws-cdk
对于资源标记为“removalPolicy: cdk.RemovalPolicy.RETAIN”的已部署堆栈,cdk destroy - 将尝试删除这些资源 AWS 控制台 CloudFormation - 将提供在跳过保留救援时销毁堆栈的选项。 如何使用 CDK 完成此任务?怎么样?
谢谢
【问题讨论】:
标签: amazon-web-services amazon-cloudformation aws-cdk
好吧,经过与 AWS 支持团队的长时间交谈,似乎添加了
currentVersionOptions:{
removalPolicy: cdk.RemovalPolicy.RETAIN
},
进入 lambda.Function - 不会将其添加到 CloudFromation 模板中。因此,应该在 Lambda 创建的末尾添加以下行:
const r = myLambdaFunction.node.defaultChild as cdk.CfnResource;
r.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);
【讨论】:
根据RemovalPolicy 上的文档
RETAIN 这使用“保留”删除策略,这将导致资源保留在帐户中,但从堆栈中孤立。
换句话说,在您使用 cdk destroy 之后,堆栈将被删除,但使用 Retain 标记的资源仍将存在于您的 AWS 账户中。
【讨论】: