json - AWS 云形成 : "Parameter [subnetIds] is invalid"

标签 json amazon-web-services aws-cloudformation aws-codepipeline

我有一个 AWS CodePipeline,可以使用 YAML 模板以及模板配置 JSON 文件在 CloudFormation 中部署堆栈。

相关模板片段:

AWSTemplateFormatVersion: '2010-09-09'
...
Parameters:
  subnetIds:
    Type: List<AWS::EC2::Subnet::Id>
...

相关配置文件片段:

{
    "Parameters": {
      ...
      "subnetIds": [
        "subnet-a",
        "subnet-b",
        "subnet-c"
      ]
    },
    ...
}

由于某种原因,部署阶段 (CloudFormation) 不断失败,并显示参数 [subnetIds] 无效,所以我的问题是如何将 subnetIds 列表从配置文件传递到模板?

最佳答案

关于列表数据类型的文档中对here进行了解释,例如:

List<AWS::EC2::Subnet::Id>

An array of subnet IDs, such as subnet-123a351e, subnet-456b351e.

也就是说,CloudFormation中的所有List类型也是逗号分隔的字符串。

由于您使用的是 CodePipeline Template Configuration File ,因此您将得到如下内容:

{
  "Parameters": {
    "subnetIds": "subnet-a,subnet-b,subnet-c"
  }
}

关于json - AWS 云形成 : "Parameter [subnetIds] is invalid",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55597714/

相关文章:

javascript - 从 JSON 文件 AngularJS 注入(inject)的编译指令

java - Gson fromJson 返回空 JsonObject

json - neo4j 浏览器导出文件,包括关系

json - 带有用于仪表板主体的嵌入式 JSON 字符串的 AWS Cloudformation YAML 文件

amazon-web-services - 使用 CDK 将角色关联到已存在的 RDS 实例

amazon-web-services - 为什么使用 `awsvpc` 网络模式的 ECS 容器无法在 CloudFormation 中声明 `extraHosts`?

Java RESTFUL-服务返回 500 内部服务器错误( Jersey )

amazon-web-services - Amazon ECS LogConfiguration 返回 "unsupported property logConfiguration"

amazon-web-services - 更改特定文件扩展名的 S3 存储桶策略中的内容类型

amazon-web-services - 使用 CloudFormation 模板在 Amazon S3 Glacier 中创建文件库