OpenStack - 如何使用OS :: Heat :: ResourceGroup中的%index%迭代comma_delimited_list?

时间:2016-05-22 09:37:33

标签: openstack heat

我有一个comma_delimited_list表示固定IP的列表,在OS::Heat::ResourceGroup我希望每个节点根据他当前的索引得到一个固定的IP。

我有以下加热模板(我只粘贴了相关内容):

my_fixed_ips:
    type: comma_delimited_list

resources:
  MyResource:
    type: OS::Heat::ResourceGroup
    properties:
      count: { get_param: my_node_count }
      resource_def:
        type: MyTemplate.yaml
        properties:
          fixed_ip: { get_param: [ my_fixed_ips, %index% ] }
          name: myName%index%

当我运行命令时:

  

openstack stack创建TomerProtected -e Environment.env -t   Template.yaml -f yaml

我收到错误: 找到了字符'%'无法启动任何令牌

我试图将index_var设置为其他内容(索引而不是%index%),但仍然无法从comma_delimited_list获取任何特定值。

我的问题是 - 如何使用OS::Heat::ResourceGroup中的%index%来迭代comma_delimited_list?

任何想法?

更新:

我自己找到了一个解决方案,但它并不让我高兴:

我已将index_var更改为:index 将comma_delimited_list和当前索引从此模板传递给MyTemplate.yaml。 从MyTemplate.yaml我可以从comma_delimited_list中获取特定值:

fixed_ips: [ { "ip_address": { get_param: [ my_fixed_ips, get_param: index ] } } ]

但是大部分都有办法从OS :: Heat :: ResourceGroup

执行此操作

0 个答案:

没有答案