743
小米
参数(Parameters)__模板语法_资源编排-阿里云
参数可用于在资源栈创建时覆盖模板中的某些值,用来提高模板的灵活性和可复用性。
例如,现在有一个模板可以用来创建包含 1 个 SLB 实例,2 个 ECS 实例,1 个 RDS 实例的 Web 应用。如果该 Web 应用负载较高,可以在创建时选择使用高配的 ECS 实例,否则可以在创建时选择使用低配的 ECS 实例。在这种情况下,可以定义如下的参数:
"Parameters" : {
"InstanceType" : {
"Type" : "String",
"AllowedValues":["ecs.t1.small","ecs.s1.medium", "ecs.m1.medium", "ecs.c1.large"],
"Default": "ecs.t1.small",
"Label": "ECS规格类型",
"Description" : "请选择创建 ECS 示例的配置,默认为 ecs.t1.small,可选 ecs.t1.small, ecs.s1.medium, ecs.m1.medium,ecs.c1.large。"
}
}
上面定义的 InstanceType 参数,允许在用户使用模板创建资源栈时重新赋值。如果用户不设置参数值则使用默认的 ecs.t1.small。在资源定义时,可以引用此参数:
"Webserver" : {
"Type" : "ALIYUN::ECS::Instance",
"InstanceType": {
"Ref": "InstanceType"
}
}
语法
每个参数由参数名称和参数属性组成。
参数名称必须为字母数字,并且在同一个模板中不能与其它参数名称重复。可以用Label字段来定义友好的参数名,一般在把模板动态生成为Web表单时很有用。
参数属性列表:
属性 | 必需 | 描述 |
---|---|---|
Type | 是 | 参数的数据类型。
|
Default | 否 | 在创建资源栈时,如果用户没有传入指定值,编排服务会检查模板中是否有定义默认值,如果有定义默认值,则使用默认值,否则报错。 |
AllowedValues | 否 | 包含参数允许值的列表。 |
AllowedPattern | 否 | 一个正则表达式,用于检查用户输入的字符串类型的参数是否匹配,如果用户输入的不是字符串类型,则报错。 |
MaxLength | 否 | 一个整数值,确定要允许 String 类型使用的字符的最大数目。 |
MinLength | 否 | 一个整数值,确定要允许 String 类型使用的字符的最小数目。 |
MaxValue | 否 | 一个数字值,确定要允许 Number 类型使用的最大数字值。 |
MinValue | 否 | 一个数字值,确定要允许 Number 类型使用的最小数字值。 |
NoEcho | 否 | 当调用查询堆栈时是否输出参数值。如果将值设置为 true,则只输出星号 (**)。 |
Description | 否 | 用于描述参数的字符串。 |
ConstraintDescription | 否 | 用于在违反该参数约束条件时说明该约束条件的字符串。 |
Label | 否 | 参数别名,支持UTF-8字符,通过模板生成Web表单时可映射为label |
示例
以下示例 Parameters 部分声明有两个参数。username 参数属于 String 类型,默认值为 anonymous。可指定的最小长度为 6,可指定的最大长度为 12,并且允许值为 anonymous,user-one,user-two。注意 username 的默认值也必须符合长度限制和允许值限制。password 参数属于 String 类型,无默认值。将 NoEcho 属性设置为 true 可阻止查询堆栈接口返回参数值。可指定的最小长度为 1,可指定的最大长度为 41。该模式允许小写和大写字母字符和数字。
"Parameters" : {
"username" : {
"Label": "用户名",
"Description" : "请输入用户名",
"Default": "anonymous",
"Type" : "String",
"MinLength" : "6",
"MaxLength" : "12",
"AllowedValues": ["anonymous", "user-one", "user-two"]
},
"password" : {
"Label": "密码",
"NoEcho" : "True",
"Description" : "请输入用户密码",
"Type" : "String",
"MinLength" : "1",
"MaxLength" : "41",
"AllowedPattern" : "[a-zA-Z0-9]*"
}
}
伪参数
伪参数是由ROS编排引擎提供的固定参数,可以和用户定义参数一样被引用,其值在编排运行时确定。目前支持的伪参数如下:
- ALIYUN::StackName - 当前资源栈的名称
- ALIYUN::StackId - 当前资源栈的ID
- ALIYUN::Region - 当前资源栈所在的区域
最后更新:2016-11-23 16:04:02
上一篇:
模板结构说明__模板语法_资源编排-阿里云
下一篇:
资源(Resources)__模板语法_资源编排-阿里云
云监控ECS监控插件安装方法__技术分享_技术运维问题_云监控-阿里云
用户信息配置__配置步骤_快速开始_Eclipse 插件-阿里云
更新编排模板__镜像与模板管理_用户指南_容器服务-阿里云
停止实例__实例相关接口_API 参考_云服务器 ECS-阿里云
阿里云推出新一代企业级ECS 让天下没有难做的生意
入门示例__附录_API文档_云解析-阿里云
设置日志__管理存储空间_控制台用户指南_对象存储 OSS-阿里云
ALIYUN::ECS::BandwidthPackage__资源列表_资源编排-阿里云
DnsProductType__数据类型_API文档_云解析-阿里云
季度营收增长96% 阿里云高层称五个月后做到全球云老二
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云