Terraform 有两种方法可以做到这一点:count和for_each。 如果一个资源或模块块包括一个for_each参数,其值是一个 map 或字符串集合,Terraform 为该 map 或字符串集合的每个成员创建一个实例。 版本说明:for_each是在 Terraform 0.12.6 中添加的。Terraform 0.13 中增加了对for_each的模块支持;以前的版本只能在资源...
"jaeger_url":"http://dev-jaeger.example.com"},{"env_name":"test","prom_url":"http://test-prom.example.com","es_url":"http://test-es.example.com:9200","jaeger_url":"http://test-jaeger.example.com"}]
这个for表达式遍历了var.list中的每个元素,然后评估表达式upper(s),将s设置为每个相应的元素。然后它用所有执行该表达式的结果按相同的顺序建立一个新的元组值。 一个for表达式的输入(在in关键字之后给出)可以是一个列表,一个集合,一个元组,一个 map,或者一个对象 (object)。
如需根据内嵌数据结构或者多个数据结构的元素组合来声明资源实例集合,可使用 Terraform 表达式和函数来生成合适的值。 iterator变量(上述示例中的 setting)具备以下属性: key:若迭代容器是 map,则 key 为当前元素的键。若迭代容器是 list,则 key 为当前元素在 list 中的下标序号。若是由 for_each 表达式产出的 set...
该错误可能是由于azuread_directory_role_assignment资源中的for-each循环中的([*])。尝试在引用Map值...
允许对用户输入的变量类型进行强制约束。Terraform支持许多类型约束,包括string、number、bool、list、map、set、object、tuple和any。如果未指定类型,那么Terraform会设置默认约束类型为any。 还可以使用类型约束创建更复杂的对象和元组结构类型。 也可以通过环境变量来设置输入变量初始值。命名规范是TF_VAR_,其中是你要设置...
Terraform 0.12 introduces a new construct called a for expression, which allows the construction of a list or map by transforming and filtering elements in another list or map. The example below shows this in use: # Configuration for Terraform 0.12 ...
{ description = "The vpc name used to create a new vpc when 'vpc_id' is not specified. Default to variable `example_name`" default = "" } variable "vpc_id" { description = "A existing vpc id used to create several vswitches and other resources." default = "" } variable "vpc_...
description ="List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified."type = list(string) default = ["10.1.0.0/16","10.2.0.0/16","10.3.0.0/16"] }variable"terway_vswitch_ids"{ description ="List of existing vswitch ids for terway."type = list(...
(arbitrary strings) for each rule. (Exactly how you specify the key is explained in the next sections.) Going back to our example, if the initial set of rules were specified with keys, e.g.[{A: A}, {B: B}, {C: C}, {D: D}], then removingBfrom the list would only cause...