From f53004709e12aae199562a274549c261569f6f67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= Date: Fri, 13 Sep 2019 18:19:31 +0200 Subject: [PATCH] Remove virt.pool_delete fast parameter There are two reasons to remove this parameter without deprecating it: * the meaning has been mistakenly inversed * fast=True will raise an exception for every libvirt storage backend since that flag has never been implemented in any of those. Fixes issue #54474 --- salt/modules/virt.py | 9 ++------- tests/unit/modules/test_virt.py | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/salt/modules/virt.py b/salt/modules/virt.py index 84b90e9b1f4a..219b421958f4 100644 --- a/salt/modules/virt.py +++ b/salt/modules/virt.py @@ -4838,13 +4838,11 @@ def pool_undefine(name, **kwargs): conn.close() -def pool_delete(name, fast=True, **kwargs): +def pool_delete(name, **kwargs): ''' Delete the resources of a defined libvirt storage pool. :param name: libvirt storage pool name - :param fast: if set to False, zeroes out all the data. - Default value is True. :param connection: libvirt connection URI, overriding defaults :param username: username to connect with, overriding defaults :param password: password to connect with, overriding defaults @@ -4860,10 +4858,7 @@ def pool_delete(name, fast=True, **kwargs): conn = __get_conn(**kwargs) try: pool = conn.storagePoolLookupByName(name) - flags = libvirt.VIR_STORAGE_POOL_DELETE_NORMAL - if fast: - flags = libvirt.VIR_STORAGE_POOL_DELETE_ZEROED - return not bool(pool.delete(flags)) + return not bool(pool.delete(libvirt.VIR_STORAGE_POOL_DELETE_NORMAL)) finally: conn.close() diff --git a/tests/unit/modules/test_virt.py b/tests/unit/modules/test_virt.py index 19b73979a629..38d5674644bc 100644 --- a/tests/unit/modules/test_virt.py +++ b/tests/unit/modules/test_virt.py @@ -2677,3 +2677,20 @@ def test_get_hypervisor(self, isxen_mock, iskvm_mock): isxen_mock.return_value = True self.assertEqual('xen', virt.get_hypervisor()) + + def test_pool_delete(self): + ''' + Test virt.pool_delete function + ''' + mock_pool = MagicMock() + mock_pool.delete = MagicMock(return_value=0) + self.mock_conn.storagePoolLookupByName = MagicMock(return_value=mock_pool) + + res = virt.pool_delete('test-pool') + self.assertTrue(res) + + self.mock_conn.storagePoolLookupByName.assert_called_once_with('test-pool') + + # Shouldn't be called with another parameter so far since those are not implemented + # and thus throwing exceptions. + mock_pool.delete.assert_called_once_with(self.mock_libvirt.VIR_STORAGE_POOL_DELETE_NORMAL)