gitlab modules: improved imports (#5259)

* gitlab modules: improved imports

* add changelog fragment

* refactored the import check to its sole function
This commit is contained in:
Alexei Znamensky 2022-09-13 06:30:02 +12:00 committed by GitHub
parent 5470ea30dc
commit 6b463e6fa6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 85 additions and 170 deletions

View file

@ -221,21 +221,14 @@ user:
type: dict
'''
import traceback
GITLAB_IMP_ERR = None
try:
import gitlab
HAS_GITLAB_PACKAGE = True
except Exception:
GITLAB_IMP_ERR = traceback.format_exc()
HAS_GITLAB_PACKAGE = False
from ansible.module_utils.api import basic_auth_argument_spec
from ansible.module_utils.basic import AnsibleModule, missing_required_lib
from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils.common.text.converters import to_native
from ansible_collections.community.general.plugins.module_utils.gitlab import auth_argument_spec, find_group, gitlab_authentication
from ansible_collections.community.general.plugins.module_utils.gitlab import (
auth_argument_spec, find_group, gitlab_authentication, gitlab, ensure_gitlab_package
)
class GitLabUser(object):
@ -616,6 +609,7 @@ def main():
('state', 'present', ['name', 'email']),
)
)
ensure_gitlab_package(module)
user_name = module.params['name']
state = module.params['state']
@ -634,9 +628,6 @@ def main():
user_identities = module.params['identities']
overwrite_identities = module.params['overwrite_identities']
if not HAS_GITLAB_PACKAGE:
module.fail_json(msg=missing_required_lib("python-gitlab"), exception=GITLAB_IMP_ERR)
gitlab_instance = gitlab_authentication(module)
gitlab_user = GitLabUser(module, gitlab_instance)