f86c0ff48f
Use queens release of: * Kolla * Kolla ansible * Bifrost * IPA * OpenStack services Changes to kolla inventory files were made by comparing the multinode inventory in kolla-ansible with the overcloud-services and overcloud-components templates. Kolla ansible added the concept of inner-compute and external-compute, and these groups have been added to the top-level inventory. We also synchronise globals.yml and kolla enablement flags. Change-Id: I87b052f777567226e41294b955f736040e55e102 Story: 2001863 Task: 14315
73 lines
2.4 KiB
Django/Jinja
73 lines
2.4 KiB
Django/Jinja
# This inventory section provides a mapping of the top level groups to hosts.
|
|
#
|
|
# Top level groups define the roles of hosts, e.g. controller or compute.
|
|
# Components define groups of services, e.g. nova or ironic.
|
|
# Services define single containers, e.g. nova-compute or ironic-api.
|
|
|
|
{% set top_level_groups = kolla_overcloud_inventory_top_level_group_map.values() |
|
|
selectattr('groups', 'defined') |
|
|
map(attribute='groups') |
|
|
sum(start=[]) |
|
|
unique |
|
|
list %}
|
|
|
|
{% for group in top_level_groups %}
|
|
# Top level {{ group }} group.
|
|
[{{ group }}]
|
|
# These hostnames must be resolvable from your deployment host
|
|
{% for host in groups.get(group, []) %}
|
|
{% set host_hv=hostvars[host] %}
|
|
{{ host }}{% for hv_name in kolla_overcloud_inventory_pass_through_host_vars %}{% if hv_name in host_hv %} {{ hv_name | regex_replace('^kolla_(.*)$', '\1') }}={{ host_hv[hv_name] }}{% endif %}{% endfor %}
|
|
|
|
{% endfor %}
|
|
|
|
{% endfor %}
|
|
[overcloud:children]
|
|
{% for group in top_level_groups %}
|
|
{{ group }}
|
|
{% endfor %}
|
|
|
|
[overcloud:vars]
|
|
ansible_user=kolla
|
|
ansible_become=true
|
|
{% if kolla_ansible_target_venv is not none %}
|
|
# Execute ansible modules on the remote target hosts using a virtualenv.
|
|
ansible_python_interpreter={{ kolla_ansible_target_venv }}/bin/python
|
|
{% endif %}
|
|
|
|
|
|
{% for kolla_group, kolla_group_config in kolla_overcloud_inventory_top_level_group_map.items() %}
|
|
{% if 'groups' in kolla_group_config %}
|
|
{% set renamed_groups = kolla_group_config.groups | difference([kolla_group]) | list %}
|
|
{% if renamed_groups | length > 0 %}
|
|
# Mapping from kolla-ansible group {{ kolla_group }} to top level kayobe
|
|
# groups.
|
|
[{{ kolla_group }}:children]
|
|
{% for group in kolla_group_config.groups %}
|
|
{{ group }}
|
|
{% endfor %}
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if 'vars' in kolla_group_config %}
|
|
# Mapping from kolla-ansible group {{ kolla_group }} to top level kayobe
|
|
# variables.
|
|
[{{ kolla_group }}:vars]
|
|
{% for var_name, var_value in kayobe_group_config.vars.items() %}
|
|
{{ var_name }}={{ var_value }}
|
|
{% endfor %}
|
|
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% for group in kolla_overcloud_inventory_kolla_top_level_groups %}
|
|
{% if group not in kolla_overcloud_inventory_top_level_group_map %}
|
|
# Empty group definition for {{ group }}.
|
|
[{{ group }}]
|
|
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
[compute:children]
|
|
inner-compute
|
|
external-compute
|