Merge "Make scenario construction more generic"
This commit is contained in:
commit
e60dd4cf75
@ -1,9 +1,9 @@
|
||||
---
|
||||
cidr_networks:
|
||||
{% if 'trove' in bootstrap_host_services %}
|
||||
{% if 'trove' in bootstrap_host_scenarios_expanded %}
|
||||
dbaas: 172.29.232.0/22
|
||||
{% endif %}
|
||||
{% if 'octavia' in bootstrap_host_services %}
|
||||
{% if 'octavia' in bootstrap_host_scenarios_expanded %}
|
||||
lbaas: 172.29.252.0/22
|
||||
{% endif %}
|
||||
container: 172.29.236.0/22
|
||||
@ -11,11 +11,11 @@ cidr_networks:
|
||||
storage: 172.29.244.0/22
|
||||
|
||||
used_ips:
|
||||
{% if 'trove' in bootstrap_host_services %}
|
||||
{% if 'trove' in bootstrap_host_scenarios_expanded %}
|
||||
- "172.29.232.1,172.29.232.50"
|
||||
- "172.29.232.100"
|
||||
{% endif %}
|
||||
{% if 'octavia' in bootstrap_host_services %}
|
||||
{% if 'octavia' in bootstrap_host_scenarios_expanded %}
|
||||
- "172.29.252.1,172.29.252.50"
|
||||
- "172.29.252.100"
|
||||
- "172.29.253.1,172.29.253.200"
|
||||
@ -66,7 +66,7 @@ global_overrides:
|
||||
net_name: "vxlan"
|
||||
group_binds:
|
||||
- neutron_linuxbridge_agent
|
||||
{% if 'trove' in bootstrap_host_services %}
|
||||
{% if 'trove' in bootstrap_host_scenarios_expanded %}
|
||||
- network:
|
||||
container_bridge: "br-dbaas"
|
||||
container_type: "veth"
|
||||
@ -79,7 +79,7 @@ global_overrides:
|
||||
- neutron_linuxbridge_agent
|
||||
- rabbitmq
|
||||
{% endif %}
|
||||
{% if 'octavia' in bootstrap_host_services %}
|
||||
{% if 'octavia' in bootstrap_host_scenarios_expanded %}
|
||||
- network:
|
||||
container_bridge: "br-lbaas"
|
||||
container_type: "veth"
|
||||
|
@ -87,7 +87,7 @@ bootstrap_host_loopback_zfs: yes
|
||||
bootstrap_host_loopback_zfs_size: 1024
|
||||
#
|
||||
# Boolean option to deploy the OSD loopback disks and cluster UUID for Ceph
|
||||
bootstrap_host_ceph: "{{ 'ceph' in bootstrap_host_services }}"
|
||||
bootstrap_host_ceph: "{{ 'ceph' in bootstrap_host_scenarios_expanded }}"
|
||||
# Size of the Ceph OSD loopbacks
|
||||
bootstrap_host_loopback_ceph_size: 1024
|
||||
# Ceph OSDs to create on the AIO host
|
||||
|
@ -21,13 +21,23 @@
|
||||
tags:
|
||||
- create-directories
|
||||
|
||||
- name: Find user conf.d configurations to deploy
|
||||
stat:
|
||||
path: "{{ bootstrap_host_aio_config_path }}/conf.d/{{ item }}.yml.aio"
|
||||
register: conf_d_stat
|
||||
with_items: "{{ bootstrap_host_scenarios_expanded }}"
|
||||
|
||||
- name: Deploy user conf.d configuration
|
||||
config_template:
|
||||
src: "{{ bootstrap_host_aio_config_path }}/conf.d/{{ item }}.yml.aio"
|
||||
dest: "/etc/openstack_deploy/conf.d/{{ item }}.yml"
|
||||
config_overrides: "{{ item.override | default({}) }}"
|
||||
src: "{{ bootstrap_host_aio_config_path }}/conf.d/{{ item.item }}.yml.aio"
|
||||
dest: "/etc/openstack_deploy/conf.d/{{ item.item }}.yml"
|
||||
config_overrides: "{{ item.item.override | default({}) }}"
|
||||
config_type: "yaml"
|
||||
with_items: "{{ bootstrap_host_services }}"
|
||||
with_items: "{{ conf_d_stat.results | default([]) }}"
|
||||
loop_control:
|
||||
label: "{{ item.item }}"
|
||||
when:
|
||||
- item.stat.exists | bool
|
||||
tags:
|
||||
- deploy-confd
|
||||
|
||||
@ -156,26 +166,26 @@
|
||||
with_items:
|
||||
- src: user_variables_ceph.yml.j2
|
||||
dest: user_variables_ceph.yml
|
||||
condition: "{{ 'ceph' in bootstrap_host_services }}"
|
||||
condition: "{{ 'ceph' in bootstrap_host_scenarios_expanded }}"
|
||||
- src: user_variables_congress.yml.j2
|
||||
dest: user_variables_congress.yml
|
||||
condition: "{{ 'congress' in bootstrap_host_services }}"
|
||||
condition: "{{ 'congress' in bootstrap_host_scenarios_expanded }}"
|
||||
- src: user_variables_translations.yml.j2
|
||||
dest: user_variables_translations.yml
|
||||
condition: "{{ bootstrap_host_scenario is search('translations') }}"
|
||||
- src: user_variables_barbican.yml.j2
|
||||
dest: user_variables_barbican.yml
|
||||
condition: "{{ 'barbican' in bootstrap_host_services }}"
|
||||
condition: "{{ 'barbican' in bootstrap_host_scenarios_expanded }}"
|
||||
- src: user_variables_manila.yml.j2
|
||||
dest: user_variables_manila.yml
|
||||
condition: "{{ 'manila' in bootstrap_host_services }}"
|
||||
condition: "{{ 'manila' in bootstrap_host_scenarios_expanded }}"
|
||||
|
||||
- name: Copy modified cinder-volume env.d file for ceph scenario
|
||||
copy:
|
||||
src: "{{ playbook_dir }}/../etc/openstack_deploy/env.d/cinder-volume.yml.container.example"
|
||||
dest: "/etc/openstack_deploy/env.d/cinder-volume.yml"
|
||||
when:
|
||||
- "'ceph' in bootstrap_host_services"
|
||||
- "'ceph' in bootstrap_host_scenarios_expanded"
|
||||
|
||||
- name: Copy modified env.d file for metal scenario
|
||||
copy:
|
||||
|
@ -232,7 +232,7 @@ octavia_v2: True
|
||||
# Disable Octavia V1 API
|
||||
octavia_v1: False
|
||||
octavia_management_net_subnet_cidr: "{{ (bootstrap_host_container_tech == 'nspawn') | ternary('172.29.240.0/22', '172.29.252.0/22') }}"
|
||||
{% elif 'octavia' in bootstrap_host_services %}
|
||||
{% elif 'octavia' in bootstrap_host_scenarios_expanded %}
|
||||
neutron_lbaas_octavia: True
|
||||
octavia_management_net_subnet_cidr: "{{ (bootstrap_host_container_tech == 'nspawn') | ternary('172.29.240.0/22', '172.29.252.0/22') }}"
|
||||
{% endif %}
|
||||
|
@ -15,45 +15,33 @@
|
||||
|
||||
bootstrap_host_scenarios: "{{ (bootstrap_host_scenario.split('_') | reject('equalto', '')) | list }}"
|
||||
|
||||
_non_service_scenarios:
|
||||
- aio
|
||||
- distro
|
||||
- lxc
|
||||
- metal
|
||||
- nspawn
|
||||
- octaviav2
|
||||
- proxy
|
||||
- source
|
||||
- telemetry
|
||||
- translations
|
||||
- varstest
|
||||
|
||||
bootstrap_host_services: |-
|
||||
{% set service_list = ['keystone'] %}
|
||||
{% set service_list_extra = bootstrap_host_scenarios | difference(_non_service_scenarios) %}
|
||||
# Expand the scenario list to include specific services that are being deployed
|
||||
# as part of the scenario
|
||||
bootstrap_host_scenarios_expanded: |-
|
||||
{# Keystone is included in every scenario #}
|
||||
{% set scenario_list = bootstrap_host_scenarios + ['keystone'] %}
|
||||
{% if 'metal' not in bootstrap_host_scenarios %}
|
||||
{% set _ = service_list.append('haproxy') %}
|
||||
{% set _ = scenario_list.append('haproxy') %}
|
||||
{% endif %}
|
||||
{% if ['aio', 'translations'] | intersect(bootstrap_host_scenarios) | length > 0 %}
|
||||
{# Base services deployed with aio and translations scenarios #}
|
||||
{% set _ = service_list.extend(['cinder', 'glance', 'neutron', 'nova', 'placement']) %}
|
||||
{% set _ = scenario_list.extend(['cinder', 'glance', 'neutron', 'nova', 'placement']) %}
|
||||
{% if 'metal' not in bootstrap_host_scenarios %}
|
||||
{# Horizon is a base service in container jobs #}
|
||||
{% set _ = service_list.append('horizon') %}
|
||||
{% set _ = scenario_list.append('horizon') %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{# Service additions based on scenario presence #}
|
||||
{% if 'ironic' in bootstrap_host_scenarios %}
|
||||
{% set _ = service_list.extend(['swift']) %}
|
||||
{% set _ = scenario_list.extend(['swift']) %}
|
||||
{% endif %}
|
||||
{% if 'octaviav2' in bootstrap_host_scenarios %}
|
||||
{% set _ = service_list.extend(['octavia']) %}
|
||||
{% set _ = scenario_list.extend(['octavia']) %}
|
||||
{% endif %}
|
||||
{% if 'telemetry' in bootstrap_host_scenarios %}
|
||||
{% set _ = service_list.extend(['aodh', 'ceilometer', 'gnocchi', 'panko']) %}
|
||||
{% set _ = scenario_list.extend(['aodh', 'ceilometer', 'gnocchi', 'panko']) %}
|
||||
{% endif %}
|
||||
{% if 'translations' in bootstrap_host_scenarios %}
|
||||
{% set _ = service_list.extend(['designate', 'heat', 'magnum', 'sahara', 'swift', 'trove']) %}
|
||||
{% set _ = scenario_list.extend(['designate', 'heat', 'magnum', 'sahara', 'swift', 'trove']) %}
|
||||
{% endif %}
|
||||
{% set _ = service_list.extend(service_list_extra) %}
|
||||
{{ (service_list | unique) | sort }}
|
||||
{{ (scenario_list | unique) | sort }}
|
||||
|
Loading…
Reference in New Issue
Block a user