AWS CloudFormation:"Parameter [subnetIds] is invalid"
AWS CloudFormation: "Parameter [subnetIds] is invalid"
我有一个 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) 一直失败 Parameter [subnetIds] is invalid
,所以我的问题是如何将 subnetId 列表从配置文件传递到模板?
关于列表数据类型的文档中有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"
}
}
我有一个 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) 一直失败 Parameter [subnetIds] is invalid
,所以我的问题是如何将 subnetId 列表从配置文件传递到模板?
关于列表数据类型的文档中有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"
}
}