mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
* Move Proxmox `HAS_PROXMOXER` check into `module_utils`.
* Fix tests.
* Fix typo.
* Update changelog entry.
(cherry picked from commit 761fbe4fa3
)
Co-authored-by: Markus Reiter <me@reitermark.us>
This commit is contained in:
parent
a477044fb7
commit
9e6df4f1c9
9 changed files with 16 additions and 24 deletions
3
changelogs/fragments/4030-proxmox-has-proxmoxer.yml
Normal file
3
changelogs/fragments/4030-proxmox-has-proxmoxer.yml
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
minor_changes:
|
||||||
|
- proxmox modules - move ``HAS_PROXMOXER`` check into ``module_utils`` (https://github.com/ansible-collections/community.general/pull/4030).
|
|
@ -68,6 +68,9 @@ def ansible_to_proxmox_bool(value):
|
||||||
class ProxmoxAnsible(object):
|
class ProxmoxAnsible(object):
|
||||||
"""Base class for Proxmox modules"""
|
"""Base class for Proxmox modules"""
|
||||||
def __init__(self, module):
|
def __init__(self, module):
|
||||||
|
if not HAS_PROXMOXER:
|
||||||
|
module.fail_json(msg=missing_required_lib('proxmoxer'), exception=PROXMOXER_IMP_ERR)
|
||||||
|
|
||||||
self.module = module
|
self.module = module
|
||||||
self.proxmox_api = self._connect()
|
self.proxmox_api = self._connect()
|
||||||
# Test token validity
|
# Test token validity
|
||||||
|
|
|
@ -76,7 +76,7 @@ proxmox_domains:
|
||||||
|
|
||||||
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
||||||
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
||||||
proxmox_auth_argument_spec, ProxmoxAnsible, HAS_PROXMOXER, PROXMOXER_IMP_ERR)
|
proxmox_auth_argument_spec, ProxmoxAnsible)
|
||||||
|
|
||||||
|
|
||||||
class ProxmoxDomainInfoAnsible(ProxmoxAnsible):
|
class ProxmoxDomainInfoAnsible(ProxmoxAnsible):
|
||||||
|
@ -114,9 +114,6 @@ def main():
|
||||||
changed=False
|
changed=False
|
||||||
)
|
)
|
||||||
|
|
||||||
if not HAS_PROXMOXER:
|
|
||||||
module.fail_json(msg=missing_required_lib('proxmoxer'), exception=PROXMOXER_IMP_ERR)
|
|
||||||
|
|
||||||
proxmox = ProxmoxDomainInfoAnsible(module)
|
proxmox = ProxmoxDomainInfoAnsible(module)
|
||||||
domain = module.params['domain']
|
domain = module.params['domain']
|
||||||
|
|
||||||
|
|
|
@ -73,7 +73,7 @@ proxmox_groups:
|
||||||
|
|
||||||
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
||||||
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
||||||
proxmox_auth_argument_spec, ProxmoxAnsible, HAS_PROXMOXER, PROXMOXER_IMP_ERR)
|
proxmox_auth_argument_spec, ProxmoxAnsible)
|
||||||
|
|
||||||
|
|
||||||
class ProxmoxGroupInfoAnsible(ProxmoxAnsible):
|
class ProxmoxGroupInfoAnsible(ProxmoxAnsible):
|
||||||
|
@ -124,9 +124,6 @@ def main():
|
||||||
changed=False
|
changed=False
|
||||||
)
|
)
|
||||||
|
|
||||||
if not HAS_PROXMOXER:
|
|
||||||
module.fail_json(msg=missing_required_lib('proxmoxer'), exception=PROXMOXER_IMP_ERR)
|
|
||||||
|
|
||||||
proxmox = ProxmoxGroupInfoAnsible(module)
|
proxmox = ProxmoxGroupInfoAnsible(module)
|
||||||
group = module.params['group']
|
group = module.params['group']
|
||||||
|
|
||||||
|
|
|
@ -197,7 +197,7 @@ def main():
|
||||||
)
|
)
|
||||||
|
|
||||||
if not HAS_PROXMOXER:
|
if not HAS_PROXMOXER:
|
||||||
module.fail_json(msg=missing_required_lib('python-proxmoxer'),
|
module.fail_json(msg=missing_required_lib('proxmoxer'),
|
||||||
exception=PROXMOXER_IMP_ERR)
|
exception=PROXMOXER_IMP_ERR)
|
||||||
|
|
||||||
state = module.params['state']
|
state = module.params['state']
|
||||||
|
|
|
@ -111,7 +111,7 @@ proxmox_storages:
|
||||||
|
|
||||||
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
||||||
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
||||||
proxmox_auth_argument_spec, ProxmoxAnsible, HAS_PROXMOXER, PROXMOXER_IMP_ERR, proxmox_to_ansible_bool)
|
proxmox_auth_argument_spec, ProxmoxAnsible, proxmox_to_ansible_bool)
|
||||||
|
|
||||||
|
|
||||||
class ProxmoxStorageInfoAnsible(ProxmoxAnsible):
|
class ProxmoxStorageInfoAnsible(ProxmoxAnsible):
|
||||||
|
@ -170,9 +170,6 @@ def main():
|
||||||
changed=False
|
changed=False
|
||||||
)
|
)
|
||||||
|
|
||||||
if not HAS_PROXMOXER:
|
|
||||||
module.fail_json(msg=missing_required_lib('proxmoxer'), exception=PROXMOXER_IMP_ERR)
|
|
||||||
|
|
||||||
proxmox = ProxmoxStorageInfoAnsible(module)
|
proxmox = ProxmoxStorageInfoAnsible(module)
|
||||||
storage = module.params['storage']
|
storage = module.params['storage']
|
||||||
storagetype = module.params['type']
|
storagetype = module.params['type']
|
||||||
|
|
|
@ -116,7 +116,7 @@ msg:
|
||||||
|
|
||||||
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
||||||
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
||||||
proxmox_auth_argument_spec, ProxmoxAnsible, HAS_PROXMOXER, PROXMOXER_IMP_ERR)
|
proxmox_auth_argument_spec, ProxmoxAnsible)
|
||||||
|
|
||||||
|
|
||||||
class ProxmoxTaskInfoAnsible(ProxmoxAnsible):
|
class ProxmoxTaskInfoAnsible(ProxmoxAnsible):
|
||||||
|
@ -163,9 +163,6 @@ def main():
|
||||||
supports_check_mode=True)
|
supports_check_mode=True)
|
||||||
result = dict(changed=False)
|
result = dict(changed=False)
|
||||||
|
|
||||||
if not HAS_PROXMOXER:
|
|
||||||
module.fail_json(msg=missing_required_lib(
|
|
||||||
'proxmoxer'), exception=PROXMOXER_IMP_ERR)
|
|
||||||
proxmox = ProxmoxTaskInfoAnsible(module)
|
proxmox = ProxmoxTaskInfoAnsible(module)
|
||||||
upid = module.params['task']
|
upid = module.params['task']
|
||||||
node = module.params['node']
|
node = module.params['node']
|
||||||
|
|
|
@ -156,7 +156,7 @@ proxmox_users:
|
||||||
|
|
||||||
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
|
||||||
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
from ansible_collections.community.general.plugins.module_utils.proxmox import (
|
||||||
proxmox_auth_argument_spec, ProxmoxAnsible, proxmox_to_ansible_bool, HAS_PROXMOXER, PROXMOXER_IMP_ERR)
|
proxmox_auth_argument_spec, ProxmoxAnsible, proxmox_to_ansible_bool)
|
||||||
|
|
||||||
|
|
||||||
class ProxmoxUserInfoAnsible(ProxmoxAnsible):
|
class ProxmoxUserInfoAnsible(ProxmoxAnsible):
|
||||||
|
@ -232,9 +232,6 @@ def main():
|
||||||
changed=False
|
changed=False
|
||||||
)
|
)
|
||||||
|
|
||||||
if not HAS_PROXMOXER:
|
|
||||||
module.fail_json(msg=missing_required_lib('proxmoxer'), exception=PROXMOXER_IMP_ERR)
|
|
||||||
|
|
||||||
proxmox = ProxmoxUserInfoAnsible(module)
|
proxmox = ProxmoxUserInfoAnsible(module)
|
||||||
domain = module.params['domain']
|
domain = module.params['domain']
|
||||||
user = module.params['user']
|
user = module.params['user']
|
||||||
|
|
|
@ -12,6 +12,7 @@ import pytest
|
||||||
import json
|
import json
|
||||||
|
|
||||||
from ansible_collections.community.general.plugins.modules.cloud.misc import proxmox_tasks_info
|
from ansible_collections.community.general.plugins.modules.cloud.misc import proxmox_tasks_info
|
||||||
|
import ansible_collections.community.general.plugins.module_utils.proxmox as proxmox_utils
|
||||||
from ansible_collections.community.general.plugins.module_utils.proxmox import ProxmoxAnsible
|
from ansible_collections.community.general.plugins.module_utils.proxmox import ProxmoxAnsible
|
||||||
from ansible_collections.community.general.tests.unit.compat.mock import MagicMock, patch
|
from ansible_collections.community.general.tests.unit.compat.mock import MagicMock, patch
|
||||||
from ansible_collections.community.general.tests.unit.plugins.modules.utils import (
|
from ansible_collections.community.general.tests.unit.plugins.modules.utils import (
|
||||||
|
@ -144,7 +145,7 @@ def test_get_tasks(connect_mock, capfd, mocker):
|
||||||
return m
|
return m
|
||||||
|
|
||||||
connect_mock.side_effect = f
|
connect_mock.side_effect = f
|
||||||
proxmox_tasks_info.HAS_PROXMOXER = True
|
proxmox_utils.HAS_PROXMOXER = True
|
||||||
|
|
||||||
with pytest.raises(SystemExit):
|
with pytest.raises(SystemExit):
|
||||||
proxmox_tasks_info.main()
|
proxmox_tasks_info.main()
|
||||||
|
@ -170,7 +171,7 @@ def test_get_single_task(connect_mock, capfd, mocker):
|
||||||
return m
|
return m
|
||||||
|
|
||||||
connect_mock.side_effect = f
|
connect_mock.side_effect = f
|
||||||
proxmox_tasks_info.HAS_PROXMOXER = True
|
proxmox_utils.HAS_PROXMOXER = True
|
||||||
|
|
||||||
with pytest.raises(SystemExit):
|
with pytest.raises(SystemExit):
|
||||||
proxmox_tasks_info.main()
|
proxmox_tasks_info.main()
|
||||||
|
@ -197,7 +198,7 @@ def test_get_non_existent_task(connect_mock, capfd, mocker):
|
||||||
return m
|
return m
|
||||||
|
|
||||||
connect_mock.side_effect = f
|
connect_mock.side_effect = f
|
||||||
proxmox_tasks_info.HAS_PROXMOXER = True
|
proxmox_utils.HAS_PROXMOXER = True
|
||||||
|
|
||||||
with pytest.raises(SystemExit):
|
with pytest.raises(SystemExit):
|
||||||
proxmox_tasks_info.main()
|
proxmox_tasks_info.main()
|
||||||
|
|
Loading…
Reference in a new issue