dc1f76c823
The deployment of etcd as a service on the control plane is no longer needed as calico was the only user of this. The etcd-server role remains in our requirements as it is used internally as part of the Zun playbook. Change-Id: I2a158fd2b85ec0e637071ed4ef7c123a6583ecc0
80 lines
3.2 KiB
YAML
80 lines
3.2 KiB
YAML
---
|
|
# Copyright 2017, Rackspace US, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
bootstrap_host_scenarios: "{{ (bootstrap_host_scenario.split('_') | reject('equalto', '')) | list }}"
|
|
|
|
_lxc_container_backing_store: |-
|
|
{% if 'zfs' in bootstrap_host_scenarios %}
|
|
{% set store = 'zfs' %}
|
|
{% elif 'btrfs' in bootstrap_host_scenarios %}
|
|
{% set store = 'btrfs' %}
|
|
{% elif 'dir' in bootstrap_host_scenarios %}
|
|
{% set store = 'dir' %}
|
|
{% elif 'lvm' in bootstrap_host_scenarios %}
|
|
{% set store = 'lvm' %}
|
|
{% elif 'overlayfs' in bootstrap_host_scenarios %}
|
|
{% set store = 'overlayfs' %}
|
|
{% else %}
|
|
{% set store = 'dir' %}
|
|
{% endif %}
|
|
{{ store }}
|
|
|
|
# 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', 'haproxy'] %}
|
|
{% if ['aio', 'translations'] | intersect(bootstrap_host_scenarios) | length > 0 %}
|
|
{# Base services deployed with aio and translations scenarios #}
|
|
{% 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 _ = scenario_list.append('horizon') %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{# Service additions based on scenario presence #}
|
|
{% if 'designate' in bootstrap_host_scenarios or ('validate' in bootstrap_host_scenarios and 'integrated' in bootstrap_host_scenarios) %}
|
|
{% set _ = scenario_list.extend(['zookeeper']) %}
|
|
{% endif %}
|
|
{% if 'ironic' in bootstrap_host_scenarios %}
|
|
{% set _ = scenario_list.extend(['swift']) %}
|
|
{% endif %}
|
|
{% if ('magnum' in bootstrap_host_scenarios) or ('sahara' in bootstrap_host_scenarios) %}
|
|
{% set _ = scenario_list.extend(['heat']) %}
|
|
{% endif %}
|
|
{% if 'manila' in bootstrap_host_scenarios %}
|
|
{% set _ = scenario_list.extend(['ceph']) %}
|
|
{% endif %}
|
|
{% if 'murano' in bootstrap_host_scenarios %}
|
|
{% set _ = scenario_list.extend(['heat']) %}
|
|
{% endif %}
|
|
{% if 'telemetry' in bootstrap_host_scenarios %}
|
|
{% set _ = scenario_list.extend(['aodh', 'ceilometer', 'gnocchi']) %}
|
|
{% endif %}
|
|
{% if 'translations' in bootstrap_host_scenarios %}
|
|
{% set _ = scenario_list.extend(['designate', 'heat', 'magnum', 'sahara', 'swift', 'trove']) %}
|
|
{% endif %}
|
|
{{ (scenario_list | unique) | sort }}
|
|
|
|
_neutron_plugin_driver: |-
|
|
{% if 'lxb' in bootstrap_host_scenarios_expanded %}
|
|
{% set plugin = 'ml2.lxb' %}
|
|
{% elif 'ovs' in bootstrap_host_scenarios_expanded %}
|
|
{% set plugin = 'ml2.ovs' %}
|
|
{% else %}
|
|
{% set plugin = 'ml2.ovn' %}
|
|
{% endif %}
|
|
{{ plugin }}
|