commit | 489645c4ac9353cb6ccce02f785e4dbb9079a3b5 | [log] [tgz] |
---|---|---|
author | Daniel Park <dan.mcpark84@gmail.com> | Wed Oct 24 11:34:22 2018 +0900 |
committer | Jian Li <pyguni@gmail.com> | Wed Oct 24 04:56:56 2018 +0000 |
tree | 0bb633fc5d6f87c8bddea172b05af30fd77d8fc7 | |
parent | 8b252d2b762ed8f3c70247e9f575254b170aa788 [diff] [blame] |
Fixes a bridge and ovsdb connection is removed in case openstack node is removed. Change-Id: Ib84a76f91c86c24a192ec4cfe64c1f37b84cc6b2
diff --git a/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandler.java b/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandler.java index 924cb7c..54a0c19 100644 --- a/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandler.java +++ b/apps/openstacknode/app/src/main/java/org/onosproject/openstacknode/impl/DefaultOpenstackNodeHandler.java
@@ -547,6 +547,12 @@ } private void processOpenstackNodeRemoved(OpenstackNode osNode) { + OvsdbClientService client = getOvsdbClient(osNode, ovsdbPort, ovsdbController); + if (client == null) { + log.info("Failed to get ovsdb client"); + return; + } + //delete physical interfaces from the node removePhysicalInterface(osNode); @@ -561,6 +567,17 @@ } }); } + + //delete tunnel bridge from the node + if (hasDpdkTunnelBridge(osNode)) { + client.dropBridge(TUNNEL_BRIDGE); + } + + //delete integration bridge from the node + client.dropBridge(INTEGRATION_BRIDGE); + + //disconnect ovsdb + client.disconnect(); } /**