73 lines
2.9 KiB
YAML
73 lines
2.9 KiB
YAML
---
|
|
# Copyright 2018, 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.
|
|
|
|
_designate_is_first_play_host: >-
|
|
{{
|
|
(designate_services['designate-api']['group'] in group_names and
|
|
inventory_hostname == (groups[designate_services['designate-api']['group']] | intersect(ansible_play_hosts)) | first) | bool
|
|
}}
|
|
|
|
_designate_is_last_play_host: >-
|
|
{{
|
|
(designate_services['designate-api']['group'] in group_names and
|
|
inventory_hostname == (groups[designate_services['designate-api']['group']] | intersect(ansible_play_hosts)) | last) | bool
|
|
}}
|
|
|
|
_designate_oslomsg_rpc_vhost_conf: >-
|
|
{{
|
|
(designate_oslomsg_rpc_vhost is string) | ternary(
|
|
designate_oslomsg_rpc_vhost, designate_oslomsg_rpc_vhost | selectattr('state', 'eq', 'present') | map(attribute='name') | first)
|
|
}}
|
|
|
|
_designate_oslomsg_notify_vhost_conf: >-
|
|
{{
|
|
(designate_oslomsg_notify_vhost is string) | ternary(
|
|
designate_oslomsg_notify_vhost, designate_oslomsg_notify_vhost | selectattr('state', 'eq', 'present') | map(attribute='name') | first)
|
|
}}
|
|
|
|
#
|
|
# Compile a list of the services on a host based on whether
|
|
# the host is in the host group and the service is enabled.
|
|
# The service list is provided in the defined start order.
|
|
#
|
|
filtered_designate_services: |-
|
|
{% set services = [] %}
|
|
{% for key, value in designate_services.items() %}
|
|
{% if (value['group'] in group_names) and
|
|
(('condition' not in value) or
|
|
('condition' in value and value['condition'])) %}
|
|
{% set _ = value.update(
|
|
{
|
|
'service_key': key,
|
|
'enabled': value['enabled'] | default(True),
|
|
'state': value['state'] | default('started'),
|
|
'config_overrides': value.init_config_overrides
|
|
}
|
|
)
|
|
%}
|
|
{% set _ = value.pop('init_config_overrides') -%}
|
|
{% set _ = services.append(value) %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{{ services | sort(attribute='start_order') }}
|
|
|
|
_designate_coordination_url: >-
|
|
{{ designate_coordination_driver }}://{{
|
|
groups[designate_coordination_group]
|
|
| map('extract', hostvars, 'ansible_host')
|
|
| list | join(':' ~ designate_coordination_port ~ ',')
|
|
}}:{{ designate_coordination_port }}?namespace={{ designate_coordination_namespace -}}
|
|
{%- if designate_coordination_client_ssl | bool %}&use_ssl=True&verify_certs={{ designate_coordination_verify_cert | bool }}{% endif %}
|