Merge "Network service is failing with DPDK"

This commit is contained in:
Jenkins 2017-02-14 08:07:22 +00:00 committed by Gerrit Code Review
commit 3a113c0c0c
2 changed files with 18 additions and 0 deletions

View File

@ -34,6 +34,13 @@ def ifcfg_config_path(name):
return "/etc/sysconfig/network-scripts/ifcfg-%s" % name
def remove_ifcfg_config(ifname):
if re.match('[\w-]+$', ifname):
ifcfg_file = ifcfg_config_path(ifname)
if os.path.exists(ifcfg_file):
os.remove(ifcfg_file)
# NOTE(dprince): added here for testability
def bridge_config_path(name):
return ifcfg_config_path(name)
@ -587,6 +594,8 @@ class IfcfgNetConfig(os_net_config.NetConfig):
# Bind the dpdk interface
utils.bind_dpdk_interfaces(ifname, ovs_dpdk_port.driver, self.noop)
if not self.noop:
remove_ifcfg_config(ifname)
data = self._add_common(ovs_dpdk_port)
logger.debug('ovs dpdk port data: %s' % data)
@ -605,6 +614,8 @@ class IfcfgNetConfig(os_net_config.NetConfig):
# checks are added at the object creation stage.
ifname = dpdk_port.members[0].name
utils.bind_dpdk_interfaces(ifname, dpdk_port.driver, self.noop)
if not self.noop:
remove_ifcfg_config(ifname)
data = self._add_common(ovs_dpdk_bond)
logger.debug('ovs dpdk bond data: %s' % data)

View File

@ -935,6 +935,13 @@ class TestIfcfgNetConfigApply(base.TestCase):
return self.temp_ifcfg_file.name
self.stubs.Set(impl_ifcfg, 'ifcfg_config_path', test_ifcfg_path)
def test_remove_ifcfg_config(name):
ifcfg_file = self.temp_ifcfg_file.name
if os.path.exists(ifcfg_file):
os.remove(ifcfg_file)
self.stubs.Set(impl_ifcfg, 'remove_ifcfg_config',
test_remove_ifcfg_config)
def test_routes_path(name):
return self.temp_route_file.name
self.stubs.Set(impl_ifcfg, 'route_config_path', test_routes_path)