I am trying to find a way of creating a dynamic List of
Resources(Loadbalancer PoolMembers to be exact) using Heat.

The idea is that the number of PoolMembers and the required Addresses would
be received as  Heat parameters.

However, I am unable to get %index% working inside a Fn:Select block.

Is this a bug with Heat or am I doing something wrong ? If this is a
bug/limitation in heat is there some other way to get what I am trying to
do working with heat ?

IMO this is a very important usecase for the %index%.

"Parameters": {
"NumberOfMembers": {
            "Description": "Number of Pool Members to be created",
            "Type": "Number",
    "Default": 1
        "MembersList": {
            "Description": "Pool Member IP Address",
            "Type": "Json",
    "Default": {"key0":""}

"MemberList": {
        "Type": "OS::Heat::ResourceGroup",
        "Properties": {
          "count": {"Ref":"NumberOfMembers"},
          "resource_def": {
     "type": "OS::Neutron::PoolMember",
     "properties": {
"address": { "Fn::Select" : [ "key%index%", {"Ref":"MembersList"}] },
             "admin_state_up": true,
             "pool_id": {"Ref":"HaproxyPool"},
             "protocol_port": "80",
     "weight": 1

OpenStack-dev mailing list

Reply via email to