我需要在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 的形式生成嵌套堆栈名称。
答案 0 :(得分:2)
是。我也在寻找同样的东西,但目前还没有。
我认为您想要特定堆栈名称的原因是将其用于输出引用?
你能做的/我做的是:
1)对于同一父堆栈中的那些,您需要从嵌套堆栈输出,然后直接从堆栈中引用,如!GetAtt NestedStack1.outputs.Output1
2)对于父堆栈外的那些,你需要输出两次。一旦进入嵌套堆栈,一次进入父堆栈。然后你可以参考父堆栈输出。
希望这会有所帮助。