【问题标题】:CloudFormation: Template error: every Ref object must have a single String valueCloudFormation:模板错误:每个 Ref 对象必须有一个字符串值
【发布时间】:2015-07-17 09:08:57
【问题描述】:

我正在尝试创建 CloudFormation 堆栈并收到以下错误:

调用 CreateStack 操作时发生客户端错误(ValidationError):模板错误:每个 Ref 对象必须有一个 String 值。

但是,当我使用 grep 查找 Ref 对象的模板时,它们都是字符串,除了看起来像的单个查找

{
  "Ref": {
     "Fn::FindInMap": [
         "InfraMap",
         "SecurityGroups",
         "NATSecurityGroup"
     ]
  }
}

这个引用的值是"NATSecurityGroup": "sg-54e6be30",,这对我来说似乎没问题。

关于这个错误可能指的是什么其他想法?

【问题讨论】:

    标签: amazon-web-services amazon-cloudformation


    【解决方案1】:
    "Ref": {
         "Fn::FindInMap": [
             "InfraMap",
             "SecurityGroups",
             "NATSecurityGroup"
         ]
    }
    

    这是不正确的,Ref 在这种情况下不是必需的,它所引用的值是一个常量,而不是在堆栈创建期间创建的变量。

    替换为

    "Fn::FindInMap": [
         "InfraMap",
         "SecurityGroups",
         "NATSecurityGroup"
    ]
    

    解决问题。

    【讨论】:

      猜你喜欢
      • 2016-03-21
      • 1970-01-01
      • 2018-06-21
      • 2017-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多