diff options
Diffstat (limited to 'deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml')
-rw-r--r-- | deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml b/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml new file mode 100644 index 00000000..62edd34b --- /dev/null +++ b/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml @@ -0,0 +1,65 @@ +############################################################################# +# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################# +--- +- name: stop neutron-openvswitch-agent + service: + name: neutron-openvswitch-agent + state: stopped + +- name: remove tunnel_types when vlan + lineinfile: + dest: /etc/neutron/plugins/ml2/openvswitch_agent.ini + state: absent + regexp: '^tunnel_types' + when: + - tenant_net_info["type"] == "vlan" + notify: + - restart neutron-openvswitch-agent + +- name: fix mapping in compute + shell: | + {% set compute_mappings = [] %} + {% for key, value in compu_prv_mappings.iteritems() %} + {% set mapping = key + ":" + value["bridge"] %} + {% set _ = compute_mappings.append(mapping) %} + {% endfor %} + {% if compute_mappings | length != 0 %} + sed -i "s/^\(bridge_mappings\).*/\1 = {{ ','.join(compute_mappings) }}/g" \ + /etc/neutron/plugins/ml2/openvswitch_agent.ini + {% else %} + sed -i "/bridge_mappings/d" /etc/neutron/plugins/ml2/openvswitch_agent.ini + {% endif %} + notify: + - restart neutron-openvswitch-agent + +- name: create compute bridges + openvswitch_bridge: + bridge: "{{ item['name'] }}" + state: present + with_items: + - "{{ provider_net_mappings }}" + when: + - compute in item["role"] + notify: + - restart neutron-openvswitch-agent + +- name: create compute bridge ports + openvswitch_port: + bridge: "{{ item['name'] }}" + port: "{{ item['interface'] }}" + state: present + with_items: + - "{{ provider_net_mappings }}" + when: + - compute in item["role"] + +- name: stop neutron-openvswitch-agent + service: + name: neutron-openvswitch-agent + state: started |