gpt4 book ai didi

amazon-web-services - 共享 CloudFormation 嵌套堆栈的输出

转载 作者:行者123 更新时间:2023-12-05 03:57:22 26 4
gpt4 key购买 nike

我有一个父堆栈,它调用 2 个嵌套堆栈,我需要将这些嵌套堆栈的值导入到父堆栈中。示例:

嵌套堆栈:

 "Outputs": {
"TargetGroup":{
"Value": {
"Ref": "ggTG"
},
"Export": {
"Name": {
"Fn::Sub": "${AWS::StackName}-TargetGroup"
}
}
},
}

当我执行所有嵌套堆栈时,我在子堆栈中获取这些输出,但我想在父堆栈中获取此输出以便从另一个独立堆栈访问。

原因是,如果我导入另一个独立堆栈,我无法使用嵌套的名称,因为它是在运行时创建的。

堆栈导入:

"TargetGroupARN" : {"Fn::ImportValue" : {"Fn::Sub" : "${StackName}-TargetGroup"}}

正如我所说,我只知道父堆栈的名称,因此我必须从父堆栈导出,而不是在子堆栈中导出。

最佳答案

来自AWS CloudFormation Template Snippets - AWS CloudFormation ,看来您可以像这样引用嵌套堆栈的输出:

{
"AWSTemplateFormatVersion" : "2010-09-09",
"Resources" : {
"myStack" : {
"Type" : "AWS::CloudFormation::Stack",
"Properties" : {
"TemplateURL" : "https://s3.amazonaws.com/cloudformation-templates-us-east-1/S3_Bucket.template",
"TimeoutInMinutes" : "60"
}
}
},
"Outputs": {
"StackRef": {"Value": { "Ref" : "myStack"}},
"OutputFromNestedStack" : {
"Value" : { "Fn::GetAtt" : [ "myStack", "Outputs.BucketName" ] }
}
}
}

因此,只需在嵌套堆栈中使用普通输出(无需导出),然后按上述方式从顶层堆栈引用它。

关于amazon-web-services - 共享 CloudFormation 嵌套堆栈的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58588685/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com