From d325a1a2f8d7c815cbaa016858db053412201b9d Mon Sep 17 00:00:00 2001 From: James Slagle Date: Mon, 11 Apr 2016 12:19:51 -0400 Subject: Add support for OVS tunnels Adds support for configuring OVS Tunnels via os-net-config. Tunnels are configured as members of ovs_bridge's where the type is set to ovs_tunnel. The object also supports setting OVS extra and options so that additional tunnel data can be defined, such as remote_ip. Change-Id: I31ac1cbe8a13247a1529c0f99a0aea5807888844 --- os_net_config/tests/test_objects.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'os_net_config/tests/test_objects.py') diff --git a/os_net_config/tests/test_objects.py b/os_net_config/tests/test_objects.py index d3e41df..a7b4230 100644 --- a/os_net_config/tests/test_objects.py +++ b/os_net_config/tests/test_objects.py @@ -514,6 +514,40 @@ class TestLinuxBond(base.TestCase): self.assertEqual("em2", interface2.name) +class TestOvsTunnel(base.TestCase): + + def test_from_json(self): + data = """{ +"type": "ovs_bridge", +"name": "br-foo", +"members": [{ + "type": "ovs_tunnel", + "name": "tun0", + "tunnel_type": "gre", + "ovs_options": [ + "remote_ip=192.168.1.1" + ], + "ovs_extra": [ + "ovs extra" + ] +}] +} +""" + bridge = objects.object_from_json(json.loads(data)) + self.assertEqual("br-foo", bridge.name) + tun0 = bridge.members[0] + self.assertEqual("tun0", tun0.name) + self.assertFalse(tun0.ovs_port) + self.assertEqual("br-foo", tun0.bridge_name) + self.assertEqual("gre", tun0.tunnel_type) + self.assertEqual( + ["options:remote_ip=192.168.1.1"], + tun0.ovs_options) + self.assertEqual( + ["ovs extra"], + tun0.ovs_extra) + + class TestNumberedNicsMapping(base.TestCase): # We want to test the function, not the dummy.. -- cgit 1.2.3-korg