From 90e9dc9e56da982a7fc8a45297a3dd6e2573ef91 Mon Sep 17 00:00:00 2001
From: Michal Nasiadka <mnasiadka@gmail.com>
Date: Wed, 22 Nov 2023 23:49:35 +0000
Subject: [PATCH] openvswitch: use Ansible modules to set up bridge

Change-Id: Iaf337c4a44bf065e96d6f30598e519ffc78de554
---
 .../roles/openvswitch/tasks/post-config.yml   | 25 ++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

diff --git a/ansible/roles/openvswitch/tasks/post-config.yml b/ansible/roles/openvswitch/tasks/post-config.yml
index 6edbbaed3d..2c0b461065 100644
--- a/ansible/roles/openvswitch/tasks/post-config.yml
+++ b/ansible/roles/openvswitch/tasks/post-config.yml
@@ -20,12 +20,31 @@
 
 - name: Ensuring OVS bridge is properly setup
   become: true
-  command: "{{ kolla_container_engine }} exec openvswitch_db /usr/local/bin/kolla_ensure_openvswitch_configured {{ item.0 }} {{ item.1 }}"
-  register: status
-  changed_when: status.stdout.find('changed') != -1
+  kolla_toolbox:
+    container_engine: "{{ kolla_container_engine }}"
+    user: root
+    module_name: openvswitch_bridge
+    module_args:
+      bridge: "{{ item.0 }}"
+      fail_mode: secure
+  loop:
+    - "{{ neutron_bridge_name.split(',') }}"
   when:
     - inventory_hostname in groups["network"]
       or (inventory_hostname in groups["compute"] and computes_need_external_bridge | bool )
+
+- name: Ensuring OVS ports are properly setup
+  become: true
+  kolla_toolbox:
+    container_engine: "{{ kolla_container_engine }}"
+    user: root
+    module_name: openvswitch_port
+    module_args:
+      bridge: "{{ item.0 }}"
+      port: "{{ item.1 }}"
   with_together:
     - "{{ neutron_bridge_name.split(',') }}"
     - "{{ neutron_external_interface.split(',') }}"
+  when:
+    - inventory_hostname in groups["network"]
+      or (inventory_hostname in groups["compute"] and computes_need_external_bridge | bool )
-- 
GitLab