这个问题通常发生在试图删除具有 Lambda@Edge 函数的 CloudFormation 栈时。通常可以通过在 CloudFormation 中更新 Lambda@Edge 来解决该问题。以下是一个代码示例,使用 AWS CDK 更新 Lambda@Edge 的版本,以便删除 Lambda 函数:
const cfnLambdaVersion = new cloudformation.Version(this, 'CfnLambdaVersion', {
lambdaFunctionName: cfnLambda.functionName,
});
cfnLambdaVersion.addDeletionOverride('AssociationExists', false);
这里,我们创建了一个名为'CfnLambdaVersion”的 CloudFormation 版本,它与我们要删除的 Lambda 函数(此处为'cfnLambda”)相关联。然后,我们添加了一个名为'AssociationExists”的删除覆盖。这个属性默认为'true”,这意味着尝试删除具有 Lambda@Edge 关联的 Lambda 函数时,CloudFormation 会失败。通过将其设置为'false”,我们可以告诉 CloudFormation 忽略这个错误并继续删除 Lambda 函数和 CloudFormation 栈。
希望这个代码示例可以帮助你解决'aws cdk:无法删除 Lambda Edge”问题。