ENI: bring up bridges first on Debian

We should bring up the interfaces on boot in the same order
with which we bring them up in this tool.
This commit is contained in:
Dan Prince 2014-07-03 14:12:01 -04:00
parent 7546d736d6
commit b3318a4c54
2 changed files with 9 additions and 5 deletions

View File

@ -149,15 +149,19 @@ class ENINetConfig(os_net_config.NetConfig):
def apply(self):
new_config = ""
# write out bridges first. This ensures that an ifup -a
# on reboot brings them up first
for bridge_name, bridge_data in self.bridges.iteritems():
route_data = self.routes.get(bridge_name)
bridge_data += (route_data or '')
new_config += bridge_data
for interface_name, iface_data in self.interfaces.iteritems():
route_data = self.routes.get(interface_name)
iface_data += (route_data or '')
new_config += iface_data
for bridge_name, bridge_data in self.bridges.iteritems():
route_data = self.routes.get(bridge_name)
bridge_data += (route_data or '')
new_config += bridge_data
if (utils.diff(_network_config_path(), new_config)):
for interface in self.interfaces.keys():
processutils.execute('/sbin/ifdown', interface,

View File

@ -198,4 +198,4 @@ class TestENINetConfigApply(base.TestCase):
self.provider.addBridge(bridge)
self.provider.apply()
iface_data = utils.get_file_data(self.temp_config_file.name)
self.assertEqual((_OVS_PORT_IFACE + _OVS_BRIDGE_DHCP), iface_data)
self.assertEqual((_OVS_BRIDGE_DHCP + _OVS_PORT_IFACE), iface_data)