openstack-ansible-os_neutron/tasks/providers/dragonflow_config.yml
Jimmy McCrory c03c932c9b Use known group names
Avoid assuming that provider or deployment specific groups are defined
in inventory by making use of the group names defined in the
'neutron_services' var and checking group membership through a host's
group_names instead of Ansible's groups dictionary.

Change-Id: I66b7c639494d98fdb3baa52fe56c670e32dea3ce
2017-11-13 11:10:33 -08:00

78 lines
2.5 KiB
YAML

---
# Copyright 2016, Jean-Philippe Evrard <jean-philippe@evrard.me>
#
# 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.
- name: Install DragonFlow pip packages
pip:
name: "{{ neutron_optional_dragonflow_pip_packages }}"
state: "{{ neutron_pip_package_state }}"
virtualenv: "{{ neutron_bin | dirname }}"
virtualenv_site_packages: "no"
extra_args: >-
{{ neutron_developer_mode | ternary(pip_install_developer_constraints | default('--constraint /opt/developer-pip-constraints.txt'), '') }}
{{ (pip_install_upper_constraints is defined) | ternary('--constraint ' + pip_install_upper_constraints | default(''),'') }}
{{ pip_install_options | default('') }}
register: install_packages
until: install_packages|success
retries: 5
delay: 2
notify: Restart neutron services
tags:
- dragonflow-install
- dragonflow-pip-packages
- name: Ensure DragonFlow directories exists
file:
path: "{{ item }}"
state: directory
owner: "{{ neutron_system_user_name }}"
group: "{{ neutron_system_group_name }}"
mode: "0755"
with_items:
- "{{ neutron_conf_dir }}/plugins"
- "/var/log/dragonflow"
tags:
- dragonflow-config
- name: Setup DragonFlow configuration
config_template:
src: dragonflow.ini.j2
dest: "{{ neutron_conf_dir }}/dragonflow.ini"
owner: "{{ neutron_system_user_name }}"
group: "{{ neutron_system_group_name }}"
config_overrides: "{{ neutron_dragonflow_ini_overrides }}"
config_type: "ini"
tags:
- dragonflow-config
- name: Setup Dragonflow pub/sub IPC socket folder
file:
path: "/var/run/dragonflow"
state: directory
owner: "{{ neutron_system_user_name }}"
group: "{{ neutron_system_group_name }}"
mode: "0755"
when:
- dragonflow_pub_sub_multiproc_enabled
- name: Setup Dragonflow integration bridge
openvswitch_bridge:
bridge: br-int
state: present
tags:
- dragonflow-config
when:
- (neutron_services['dragonflow-l3-agent']['group'] in group_names) or
(neutron_services['dragonflow-controller-agent']['group'] in group_names)