diff options
author | Steven Hardy <shardy@redhat.com> | 2015-01-22 12:41:02 +0000 |
---|---|---|
committer | Steven Hardy <shardy@redhat.com> | 2015-02-24 09:21:19 +0000 |
commit | 3d6c45c571503122741233a27a9e43c2fb56ecac (patch) | |
tree | fa16b388fdee042e63692d25f77c0d7d48e386f2 /os_net_config | |
parent | afed9e751c9eb70ea696436e07a535fc7c15783d (diff) |
Refactor ifup/ifdown into base-class
Refactor some common code so the base-class handles the ifup/down
Change-Id: Id1fee1d2d5c9315717611b7bf18f058c49fe3622
Diffstat (limited to 'os_net_config')
-rw-r--r-- | os_net_config/__init__.py | 8 | ||||
-rw-r--r-- | os_net_config/impl_eni.py | 14 | ||||
-rw-r--r-- | os_net_config/impl_ifcfg.py | 18 |
3 files changed, 19 insertions, 21 deletions
diff --git a/os_net_config/__init__.py b/os_net_config/__init__.py index 8d241af..5e1d091 100644 --- a/os_net_config/__init__.py +++ b/os_net_config/__init__.py @@ -117,3 +117,11 @@ class NetConfig(object): logger.info('%s%s' % (self.log_prefix, msg)) if not self.noop: os.remove(filename) + + def ifdown(self, interface, iftype='interface'): + msg = 'running ifdown on %s: %s' % (iftype, interface) + self.execute(msg, '/sbin/ifdown', interface, check_exit_code=False) + + def ifup(self, interface, iftype='interface'): + msg = 'running ifup on %s: %s' % (iftype, interface) + self.execute(msg, '/sbin/ifup', interface) diff --git a/os_net_config/impl_eni.py b/os_net_config/impl_eni.py index 880c4e4..5f46f33 100644 --- a/os_net_config/impl_eni.py +++ b/os_net_config/impl_eni.py @@ -211,24 +211,18 @@ class ENINetConfig(os_net_config.NetConfig): if (utils.diff(_network_config_path(), new_config)): for interface in self.interfaces.keys(): - msg = 'running ifdown on interface: %s' % interface - self.execute(msg, '/sbin/ifdown', interface, - check_exit_code=False) + self.ifdown(interface) for bridge in self.bridges.keys(): - msg = 'running ifdown on bridge: %s' % bridge - self.execute(msg, '/sbin/ifdown', bridge, - check_exit_code=False) + self.ifdown(bridge, iftype='bridge') self.write_config(_network_config_path(), new_config) for bridge in self.bridges.keys(): - msg = 'running ifup on bridge: %s' % bridge - self.execute(msg, '/sbin/ifup', bridge) + self.ifup(bridge, iftype='bridge') for interface in self.interfaces.keys(): - msg = 'running ifup on interface: %s' % interface - self.execute(msg, '/sbin/ifup', interface) + self.ifup(interface) else: logger.info('No interface changes are required.') diff --git a/os_net_config/impl_ifcfg.py b/os_net_config/impl_ifcfg.py index 56a0e47..100edeb 100644 --- a/os_net_config/impl_ifcfg.py +++ b/os_net_config/impl_ifcfg.py @@ -259,28 +259,24 @@ class IfcfgNetConfig(os_net_config.NetConfig): if ifcfg_file not in all_file_names: interface_name = ifcfg_file[len(cleanup_pattern()) - 1:] if interface_name != 'lo': - msg = 'cleaning up interface: %s' % interface_name - self.execute(msg, '/sbin/ifdown', interface_name, - check_exit_code=False) + logger.info('cleaning up interface: %s' + % interface_name) + self.ifdown(interface_name) self.remove_config(ifcfg_file) for interface in restart_interfaces: - msg = 'running ifdown on interface: %s' % interface - self.execute(msg, '/sbin/ifdown', interface, check_exit_code=False) + self.ifdown(interface) for bridge in restart_bridges: - msg = 'running ifdown on bridge: %s' % bridge - self.execute(msg, '/sbin/ifdown', bridge, check_exit_code=False) + self.ifdown(bridge, iftype='bridge') for location, data in update_files.iteritems(): self.write_config(location, data) for bridge in restart_bridges: - msg = 'running ifup on bridge: %s' % bridge - self.execute(msg, '/sbin/ifup', bridge) + self.ifup(bridge, iftype='bridge') for interface in restart_interfaces: - msg = 'running ifup on interface: %s' % interface - self.execute(msg, '/sbin/ifup', interface) + self.ifup(interface) return update_files |