
From: Daniel Henrique Barboza <danielhb@linux.vnet.ibm.com> Adding a new forward mode called 'passthrough' to macvtap networks. New test included. Signed-off-by: Daniel Henrique Barboza <danielhb@linux.vnet.ibm.com> --- model/networks.py | 3 ++- tests/test_networkxml.py | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/model/networks.py b/model/networks.py index 333ea6d..028121d 100644 --- a/model/networks.py +++ b/model/networks.py @@ -192,7 +192,8 @@ class NetworksModel(object): raise InvalidParameter('KCHNET0028E', {'name': iface}) # set macvtap network - params['forward'] = {'mode': 'bridge', 'dev': iface} + forward_mode = params.get('forward_mode', 'bridge') + params['forward'] = {'mode': forward_mode, 'dev': iface} def _set_network_vepa(self, params): for iface in params['interfaces']: diff --git a/tests/test_networkxml.py b/tests/test_networkxml.py index 8e83744..40776bc 100644 --- a/tests/test_networkxml.py +++ b/tests/test_networkxml.py @@ -195,6 +195,20 @@ class NetworkXmlTests(unittest.TestCase): xml_str = nxml.to_network_xml(**params) self.assertEqual(xml_str, expected_xml) + def test_macvtap_passthrough_forward_xml(self): + expected_xml = """<network><name>test_macvtap</name>\ +<forward mode="passthrough" dev="interface1"/></network>""" + + params = { + "name": "test_macvtap", + "forward": { + "mode": "passthrough", + "dev": "interface1" + } + } + xml_str = nxml.to_network_xml(**params) + self.assertEqual(xml_str, expected_xml) + class InterfaceXmlTests(unittest.TestCase): -- 2.5.5