检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
本地变量 本地变量可以理解为模块中的临时变量,其作用范围在所声明的模块内,通过关键字 "locals" 进行声明。本地变量适用于配置中有重复定义相同值或表达式的场景,可以减少代码冗余,并且易于修改。同时过度使用本地变量会导致变量的实际值被隐藏,代码晦涩,不利于维护,因此建议合理使用本地变量。
variable块中主要包括如下参数: type:指定变量的类型,默认为 string。 description :指定变量的描述信息,用于描述变量的用途。 default:指定变量的默认值,存在默认值的变量可视为可选变量。 validation块:指定变量的自定义验证规则。 如果未明确指定变量类型,则默认为 st
变量引用 在编写模板时,通常会使用到变量引用的特性,像写函数一样,引用一个已定义好的变量或引用其他对象的成员变量。在AOS模板中也是一样的,您也可以引用其他已有的值。 为了使模板写作更加通顺,根据被引用的对象,将引用方法分为: 引用输入:使用get_input方式。 引用元素属性
输出变量 输出变量可以理解为模块的返回值,通过关键字 "output" 进行声明。输出变量是一种对外公开某些信息的方法,既可以在根模块中运行 terraform apply/output 命令输出特定的值,又可以在子模块中将资源的属性值提供给父模块。 声明输出变量 按照约定,输出变量通常在名为
变量 输入变量 输出变量 本地变量 父主题: 配置指南
cond_not 对计算结果求反,一般用于嵌套其他条件函数。 表2 cond_not 语法 参数说明 返回值 cond_not: cond cond:条件表达式,可以为布尔值、来自get_input的布尔变量或嵌套的cond_eq、cond_not等条件函数。 条件表达式计算结果为true时
块(Block),表达式(Experssion)和函数(Functions)组成。 参数 (Argument) 使用等号将一个值或表达式赋值给指定的参数名称,参数名称可以使用字母、数字、下划线(_)和连接符(-)表示,且首字母不能是数字,例如: image_id = "ad091
返回结果 状态码 请求发送以后,您会收到响应,其中包含状态码、响应消息头和消息体。 状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。 对于获取用户Token接口,如果调用后返回状态码为“201”,则表示请求成功。 响应消息头 对应
mappings mappings为可选项,用于定义映射表。在基于模板创建资源栈时,可以根据输入的变量信息,通过get_in_map方法提取特定变量对应的内容。一个模板最多支持定义10个映射。 mappings格式: <映射名称>: <映射对象名称>: <映射对象属性名称>:
当创建多个资源时(如一次性创建多台ECS虚机),refID、refName返回值为String数组。 示例 获取参数并赋值给output的参数。 示例:获取my-first-vpc创建后的id,并赋值给资源栈的输出参数vpc_id。 tosca_definitions_version: huawei
outputs 根据模板的要求,执行完一遍部署动作后,模板中定义的所有对象都会被创建。此时,如果需要更直观的看到一些部署结果,您可以把这个结果写在模板的输出章节。一般常见的输出包括:访问地址+端口,应用的URL,初始账号密码等。 outputs为可选项,用于定义模板生成资源栈运行
将一个字符串拆分成一组字符串,以便从结果字符串列表中获取特定元素。 直接使用结果字符串数组。 语法 split: [delimiter, sourceString ] 参数说明 表1 参数说明 参数 参数说明 delimiter 分隔符,一般为字符串或单个字符,也可以来自get_input变量。 sourceString
Terraform的配置文件以 ".tf" 或".tf.json"结尾,主要由provider,resource,data source和变量组成。 每个 Provider 代表一个服务提供商,Terraform 通过插件机制与Provider进行交互。Provider通过关键字
查询资源栈 步骤:进入资源编排控制台,单击左侧导航栏中的“资源栈”,进入资源栈列表页面 在资源栈列表上方的输入框中输入要查找的资源栈名称,单击搜索图标即可,如图1: 图1 资源栈搜索 父主题: 入门
Batch模板中定义的变量,需确保内部结构的每个key符合下面的正则表达书:"^[a-zA-Z_][a-zA-Z0-9_]*$" properties 是 string Batch元素的属性模板,采用jinja2的模板格式。可基于基础类型的模板,改造成字符串(yaml格式定义),并将变量定义成模
很多情况下,定义的变量是一个字符串,但同时需要引用此变量既作为字符串,又作为数字。例如,端口号在作为ENV环境变量时,要求其值是字符串类型,而在作为应用微服务属性时,要求其值为数字。 针对上述问题,有如下两种方式可解决: 方式一:定义两个变量 定义PORT-i, PORT-s两个变量,POR
输出是一个云对象创建成功后的结果。一个云对象有哪些结果,由该对象本身的特点决定。有的对象结果很多,有的对象的结果则很少。 云对象的输出,有如下两个使用场景,一般配合内置函数get_attribute使用。 作为另一个云对象的输入。 作为整个资源栈的结果输出。 结果语法如下: #另一个对象ECS中的结果,服务名Service
配置指南 Provider Resource Data Source 变量 Metadata Extension 父主题: 资源编排
2022年6月 序号 功能名称 功能描述 阶段 相关文档 1 支持解析模板参数 资源编排云服务提供了解析模板中变量variable参数的功能,您可以通过该API获取模板中定义的所有变量信息,包括变量名称、类型、描述信息、默认、是否为敏感字段、是否可以为空。目前支持解析的模板文件格式是zip或tf或tfjson。
单击“下一步”,查看堆栈信息,确认无误后,单击“创建堆栈”。 可查看到当前堆栈为“创建中”,预计需要5分钟创建成功。 待堆栈创建成功,单击“堆栈详情”,可查看到堆栈状态为“正常”,“堆栈元素”中已存在六个云服务。 图6 堆栈创建成功 在“输出参数”页签中,可查看到三个输出参数。 图7