From fe3021fc3755509fabdc7f885f61495f60080594 Mon Sep 17 00:00:00 2001
From: Julia Kreger <juliaashleykreger@gmail.com>
Date: Tue, 26 Apr 2022 10:43:27 -0700
Subject: [PATCH] Grenade: Turn up interfaces for vxlan

So... We can't do this in a single patch, and we *actually*
need to merge the vxlan fix before the subnode will ever pickup
the configuration

From the logs, I can observe the vxlan tunnel connects between
the nodes. Awesome.

Where things break is in the local setup of the local bridges
used to wire everything together.

setup_vxlan_network:3274 :   sudo ovs-vsctl add-port sub1brbm phy-brbm-infra
ovs-vsctl: Error detected while setting up 'phy-brbm-infra':
could not open network device phy-brbm-infra (No such device).
See ovs-vswitchd log for details.

Basically, with the same change on a separate patch, we're able to
observe the controller node work perfectly. It is the subnode
connectivity which is just broken.

So, activate the bridge interfaces seems ideal. This likely broke
at some point due to behavior changes in OpenVSwitch.

Change-Id: I11dbba1957d67187d859a1ef60563c0301da9812
---
 devstack/lib/ironic | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/devstack/lib/ironic b/devstack/lib/ironic
index 366eb03b8c..9ef5d7d043 100644
--- a/devstack/lib/ironic
+++ b/devstack/lib/ironic
@@ -3271,7 +3271,11 @@ function get_ironic_node_prefix {
 }
 
 function setup_vxlan_network {
+    sudo ip link add phy-brbm-infra type bridge
+    sudo ip link set dev phy-brbm-infra up
     sudo ovs-vsctl add-port $IRONIC_VM_NETWORK_BRIDGE phy-brbm-infra
+    sudo ip link add phy-infra-brbm type bridge
+    sudo ip link set dev phy-infra-brbm up
     sudo ovs-vsctl add-port $PUBLIC_BRIDGE phy-infra-brbm
     sudo ovs-vsctl set interface phy-brbm-infra type=patch
     sudo ovs-vsctl set interface phy-infra-brbm type=patch