我在使用嵌套堆栈创建堆栈时遇到问题。我有一个主模板(列出的模板用于测试,并且只引用一个嵌套堆栈)。我试图弄清楚如何将值从主服务器传递给嵌套堆栈,还是有更好的方法来做到这一点?每次尝试创建堆栈时,我都会得到:
Template format error: Unresolved resource dependencies [VpcCidrBlock] in the Resources block of the template.
我理解的意思是我放入主堆栈的参数没有传递给嵌套堆栈。
主模板:
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "Master template",
"Parameters" : {
"availabilityZone" : {
"Default" : "us-east-1d",
"Description" : "Enter AvailabilityZone.",
"Type" : "String"
},
"VpcCidrBlock" : {
"Default" : "10.0.0.0/16",
"Description" : "VPC CIDR Block.",
"Type" : "String"
}
},
"Resources" : {
"VPCStack" : {
"Type" : "AWS::CloudFormation::Stack",
"Properties" : {
"TemplateURL" : "https://s3.amazonaws.com/dev.url.templates/templates/vpcStack.json",
"TimeoutInMinutes" : "5",
"Parameters" : {
"VpcCidrBlock" : {
"Ref" : "VpcCidrBlock"
}
}
}
}
}
}
VPC模板:
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "VPC template",
"Resources" : {
"VpcStack" : {
"Type" : "AWS::EC2::VPC",
"Properties" : {
"EnableDnsSupport" : "true",
"EnableDnsHostnames" : "true",
"CidrBlock" : {
"Ref" : "VpcCidrBlock"
},
"Tags" : [
{
"Key" : "Application",
"Value" : {
"Ref" : "AWS::StackName"
}
}
]
}
}
}
}
谢谢!
答案 0 :(得分:1)
您的内部模板需要输入参数:
"Parameters" : {
"VpcCidrBlock" : {
"Description" : "VPC CIDR Block.",
"Type" : "String"
}
},
就像你的外部“包装”模板一样。