CloudFormation 嵌套堆栈名称
Posted
技术标签:
【中文标题】CloudFormation 嵌套堆栈名称【英文标题】:CloudFormation nested stack name 【发布时间】:2017-11-25 15:12:55 【问题描述】:我需要在 CloudFormation 模板中显式设置嵌套堆栈名称,但在 AWS documentation 中看不到此类选项。有没有办法做到这一点? 我可以在运行父堆栈时指定堆栈名称,但所有嵌套堆栈都会根据创建的资源名称随机生成堆栈名称,例如:
VPC:
Type: AWS::CloudFormation::Stack
Properties:
TemplateURL: https://s3-eu-west-1.amazonaws.com/cf-templates-wtmg/vpc.yaml
Parameters:
EnvironmentName: !Ref AWS::StackName
这将生成 parent_stack_name-VPC-random_hash 形式的嵌套堆栈名称。
【问题讨论】:
【参考方案1】:是的。我也在寻找同样的东西,但目前它不可用。
我认为您想要一个特定堆栈名称的原因是为了将其用于输出引用?
你能做的/我做的是:
1) 对于同一个父栈,需要从嵌套栈中输出,然后像!GetAtt NestedStack1.Outputs.Output1
一样直接从栈中引用
2) 对于那些在父栈之外的,你需要输出两次。一次在嵌套堆栈中,一次在父堆栈中。然后可以参考父栈输出。
希望这会有所帮助。
【讨论】:
以上是关于CloudFormation 嵌套堆栈名称的主要内容,如果未能解决你的问题,请参考以下文章
AWS cloudformation 嵌套堆栈因模板 URL 失败
对 CloudFormation 上的嵌套堆栈使用 CAPABILITY_AUTO_EXPAND
在 AWS cloudformation 上理解 Apigateway 和嵌套堆栈时出错
AWS CloudFormation CodePipeline、ParameterOverrides、将列表传递给嵌套堆栈