Add enable_network_adapter
Change-Id: Iae635a51c51adbfc6628a36f52520c5bdc0f0a72 Partially-Implements: blueprint json-network-config
This commit is contained in:
parent
1fc57be0f7
commit
6e079d6fa4
@ -87,6 +87,9 @@ class BaseOSUtils(object):
|
||||
def rename_network_adapter(self, old_name, new_name):
|
||||
raise NotImplementedError()
|
||||
|
||||
def enable_network_adapter(self, name, enabled):
|
||||
raise NotImplementedError()
|
||||
|
||||
def set_static_network_config(self, name, address, prefix_len_or_netmask,
|
||||
gateway, dnsnameservers):
|
||||
raise NotImplementedError()
|
||||
|
@ -888,6 +888,13 @@ class WindowsUtils(base.BaseOSUtils):
|
||||
operation_options = {u'custom_options': custom_options}
|
||||
dns_client.put(operation_options=operation_options)
|
||||
|
||||
def enable_network_adapter(self, name, enabled):
|
||||
adapter = self._get_network_adapter(name)
|
||||
if enabled:
|
||||
adapter.Enable()
|
||||
else:
|
||||
adapter.Disable()
|
||||
|
||||
@staticmethod
|
||||
def _set_static_network_config(name, address, prefix_len, gateway):
|
||||
if netaddr.valid_ipv6(address):
|
||||
|
@ -590,6 +590,27 @@ class TestWindowsUtils(testutils.CloudbaseInitTestBase):
|
||||
def test_get_network_adapters_xp_2003(self):
|
||||
self._test_get_network_adapters(True)
|
||||
|
||||
@mock.patch('cloudbaseinit.osutils.windows.WindowsUtils'
|
||||
'._get_network_adapter')
|
||||
def _test_enable_network_adapter(self, mock_get_network_adapter, enabled):
|
||||
self._winutils.enable_network_adapter(
|
||||
mock.sentinel.adapter_name, enabled)
|
||||
|
||||
mock_get_network_adapter.assert_called_once_with(
|
||||
mock.sentinel.adapter_name)
|
||||
|
||||
adapter = mock_get_network_adapter.return_value
|
||||
if enabled:
|
||||
adapter.Enable.assert_called_once_with()
|
||||
else:
|
||||
adapter.Disable.assert_called_once_with()
|
||||
|
||||
def test_enable_network_adapter(self):
|
||||
self._test_enable_network_adapter(enabled=True)
|
||||
|
||||
def test_disable_network_adapter(self):
|
||||
self._test_enable_network_adapter(enabled=False)
|
||||
|
||||
@mock.patch('cloudbaseinit.osutils.windows.WindowsUtils'
|
||||
'.check_os_version')
|
||||
def _test_set_static_network_config(self, mock_check_os_version,
|
||||
|
Loading…
x
Reference in New Issue
Block a user