Merge "Add ServerIdMap output"

This commit is contained in:
Jenkins 2017-07-03 12:16:29 +00:00 committed by Gerrit Code Review
commit 92af39f6f2

View File

@ -462,6 +462,21 @@ resources:
servers: {get_attr: [{{role.name}}, attributes, nova_server_resource]} servers: {get_attr: [{{role.name}}, attributes, nova_server_resource]}
{% endfor %} {% endfor %}
# This is a different format to *Servers, as it creates a map of lists
# whereas *Servers creates a map of maps with keys of the nested resource names
ServerIdMap:
type: OS::Heat::Value
properties:
value:
server_ids:
{% for role in roles %}
{{role.name}}: {get_attr: [{{role.name}}, nova_server_resource]}
{% endfor %}
bootstrap_server_id:
yaql:
expression: coalesce($.data, []).first(null)
data: {get_attr: [{{primary_role_name}}, nova_server_resource]}
# This resource just creates a dict out of the DeploymentServerBlacklist, # This resource just creates a dict out of the DeploymentServerBlacklist,
# which is a list. The dict is used in the role templates to set a condition # which is a list. The dict is used in the role templates to set a condition
# on whether to create the deployment resources. We can't use the list # on whether to create the deployment resources. We can't use the list
@ -825,3 +840,6 @@ outputs:
map_merge: map_merge:
- {get_attr: [VipMap, net_ip_map]} - {get_attr: [VipMap, net_ip_map]}
- redis: {get_attr: [RedisVirtualIP, ip_address]} - redis: {get_attr: [RedisVirtualIP, ip_address]}
ServerIdData:
description: Mapping of each role to a list of nova server IDs and the bootstrap ID
value: {get_attr: [ServerIdMap, value]}