更新时间:2023-12-13 GMT+08:00

get_in_map

如果模板中定义了映射表,可以在node_templates和outputs的属性段中,通过get_in_map的方法获取映射表中的内容。

语法

get_in_map: [map_name, top_level_key, second_level_key]

参数说明

表1 参数说明

参数

是否必填

参数说明

map_name

映射名称

top_level_key

映射对象名称

second_level_key

映射对象属性

返回值

映射表中相应字段的值。

示例

通过get_in_map获取映射的内容。

mappings:
  regionMap:
    cn-east-3:   #华东区定义
      flavor: c2.medium    #使用华东区虚拟机规格
      image_id: f2003c7b-99c4-4616-be19-334beaca81b1   #使用华东区镜像id
    cn-north-1:  #华北区定义
      flavor: c1.medium    #使用华北区虚拟机规格
      image_id: 42f34d95-a538-4d17-be48-e690b48c1643   #使用华北区镜像id
    cn-south-1:  #华南区定义
      flavor: c1.medium    #使用华南区虚拟机规格
      image_id: a3934478-bfeb-4a02-b257-9089779f0380   #使用华南区镜像id
node_templates:
  myecs:
    type: HuaweiCloud.ECS.CloudServer
    properties:
      availabilityZone: cn-south-1a
      flavor:
        get_in_map:
          - regionMap
          - get_input: HuaweiCloud.Region
          - flavor
      imageId:
        get_in_map:
          - regionMap
          - get_input: HuaweiCloud.Region
          - image_id
      ...