amazon-web-services - 删除导出变量并帮助消除循环依赖

标签 amazon-web-services amazon-cognito aws-cloudformation

我们有一个 Cloudformation 堆栈,我们导出由堆栈创建的 ARN 并将其导入到同一堆栈中。当我们尝试删除堆栈时,它会先尝试删除输出,并意识到输出正在使用中,并且不会删除堆栈。

我们正在寻找有关如何重新部署堆栈或编辑堆栈的指导,以便我们可以删除依赖项。

我们尝试在配置编辑器中编辑堆栈,但更改未保存,并且在尝试删除堆栈时仍然出现相同的错误。

"UserPoolArn":{  
     "Description":"The ARN for Cognito User Pool",
     "Value":{  
        "Fn::GetAtt":[  
           "userPool",
           "Arn"
        ]
     },
     "Export":{  
        "Name":"organization:XX:UsersPoolArn"
     }

Import within the same cf stack
        "Environment":{  
           "Variables":{  

              "USER_POOL":{  
                 "Fn::ImportValue":"organization:XX:UsersPoolArn"
              }
           }
        }
     }

我们如何删除有问题的输出键/值?

最佳答案

我的第一次尝试是将 ImportValue 行替换为任何值。由于您的目标是删除堆栈,因此我并不真正关心对值进行硬编码。使用该硬编码更新堆栈,一旦堆栈达到更新完成状态,您应该能够删除堆栈,因为循环依赖项已被删除。

在单个堆栈中,Ref 是比 ImportValue 更好的选择。我很确定无法使用此配置创建堆栈,因为在启动之前验证堆栈时导入的值不会出现,所以我猜测这是有人在更新堆栈后所做的事情被创建。

关于amazon-web-services - 删除导出变量并帮助消除循环依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44371990/

相关文章:

amazon-web-services - 在JSON属性名称中搜索带有特殊字符的AWS CloudWatch Logs

javascript - 如何防止 React Native 中的连接丢失?

ssh - 如何更改 EC2 公钥?

amazon-web-services - 如何修复 S3 存储桶和 SQS 之间的循环依赖关系?

php - EC2 Mod Rewrite 将 AllowOverRide None 更改为 All

ios - 为什么 Google 登录用户没有显示在用户池中?

amazon-web-services - 如何在 lambda 中读取 AWS cognito 自定义属性和登录用户

java - 如何使用 Amazon Cognito 保护我们自己的网络服务?

configuration - cloudformation参数文件的ini文件

amazon-web-services - 通过云形成控制SNS策略