ROSTemplateFormatVersion: '2015-09-01'
Resources:
Vpc:
Type: 'ALIYUN::ECS::VPC'
Properties:
VpcName: test-vpc
CidrBlock: 192.168.0.0/16
使用这个模版创建资源时,因为Vpc的属性硬编码在模版中,所以想要创建多个不同name、不同网段的Vpc时必须修改模版内容,这样的话模版的复用性就很差。
使用参数提高模版复用性
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
VpcName:
Type: String
Default: my-vpc
VpcCidrBlock:
Type: String
Default: 192.168.0.0/16
AllowedValues:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
Resources:
Vpc:
Type: 'ALIYUN::ECS::VPC'
Properties:
VpcName:
Ref: VpcName
CidrBlock:
Ref: VpcCidrBlock
- Resources中,使用Ref引用参数,即模版的Parameters中定义的值
- Parameters中定义参数,其值为Map类型,key为参数名(用于被资源引用),value(Map类型)为参数名。
参数value
- Type(必填项):定义参数的类型,取值为String/Number/Json/Boolean,Type的取值类型与引用该参数的资源属性类型相同,资源属性为Map或List时,参数类型取值为Json。
- Default(非必填项):参数的默认值,在创建资源时可修改
- AllowedValues(非必填项):定义可选的参数值,参数取值必须从列表中选择
- 完整参数信息请参考参数(Parameters)