【发布时间】:2017-08-27 01:46:53
【问题描述】:
我正在尝试使用 FN::Sub 来构造二级密钥,如下所示。验证器将只接受一个字符串。我错过了什么?
“ImageId”:{“Fn::FindInMap”:[“RegionMap”,{“Ref”:“AWS::Region”},{“Fn::Sub”:“AMI${SQLServerVersion}”}] },
【问题讨论】:
标签: amazon-web-services amazon-cloudformation
我正在尝试使用 FN::Sub 来构造二级密钥,如下所示。验证器将只接受一个字符串。我错过了什么?
“ImageId”:{“Fn::FindInMap”:[“RegionMap”,{“Ref”:“AWS::Region”},{“Fn::Sub”:“AMI${SQLServerVersion}”}] },
【问题讨论】:
标签: amazon-web-services amazon-cloudformation
希望它能为其他人节省一些时间,有两个重要发现关于 Fn::FindInMap
由于这些限制,我添加了一个映射
"SQLServerMap": {
"eu-west-1": {
"2008": "ami-14b4446d",
"2012": "ami-5fd72526",
"2016": "ami-8b7f8ef2"
}
}
然后模板现在验证
“ImageId”:{“Fn::FindInMap”:[“SQLServerMap”,{“Ref”:“AWS::Region”},{“Ref”:“SQLServerVersion”}]}
【讨论】:
Fn::FindInMap 仅支持 Ref 和 Fn::FindInMap 根据文档 (docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/…)