aboutsummaryrefslogtreecommitdiffstats
path: root/overcloud.j2.yaml
diff options
context:
space:
mode:
authorZuul <zuul@review.openstack.org>2017-11-10 17:15:39 +0000
committerGerrit Code Review <review@openstack.org>2017-11-10 17:15:39 +0000
commitdf64ca710bb69f1b2db3fead86e836076f842c14 (patch)
treeb8268eaf3afde34f607f9ca65d870ffb18921260 /overcloud.j2.yaml
parente0ec12d40bf4ceae872fbb792dfbb8a1830560a4 (diff)
parent4217767d8782abae02b11f553fc14daf7cd72916 (diff)
Merge "Refactor cellv2 host discovery logic to avoid races" into stable/pike
Diffstat (limited to 'overcloud.j2.yaml')
-rw-r--r--overcloud.j2.yaml15
1 files changed, 15 insertions, 0 deletions
diff --git a/overcloud.j2.yaml b/overcloud.j2.yaml
index 3506fe8e..9ea195da 100644
--- a/overcloud.j2.yaml
+++ b/overcloud.j2.yaml
@@ -642,6 +642,21 @@ resources:
{% for role in roles %}
- {get_attr: [{{role.name}}ServiceNames, value]}
{% endfor %}
+ cellv2_discovery_hosts:
+ # Collects compute hostnames for all roles with a service that requires cellv2 host discovery
+ list_join:
+ - ','
+ - yaql:
+ expression: coalesce($.data.e.zip($.data.l).where($[0]).select($[1]).flatten(), [])
+ data:
+ e: # list of true/fails for whether cellsv2 host discovery is required for the roles
+{%- for role in roles %}
+ - {get_attr: [{{role.name}}ServiceChainRoleData, value, cellv2_discovery]}
+{%- endfor %}
+ l: # list of list of compute hostnames for the roles
+{%- for role in roles %}
+ - {get_attr: [{{role.name}}, hostname_map, canonical]}
+{%- endfor %}
controller_ips: {get_attr: [{{primary_role_name}}, ip_address]}
controller_names: {get_attr: [{{primary_role_name}}, hostname]}
service_ips: