From 19bc19298b0c7cf6db4aa82285ff7f22bab34557 Mon Sep 17 00:00:00 2001 From: Bruno Rocha <rochacbruno@users.noreply.github.com> Date: Fri, 17 Nov 2023 15:56:21 +0000 Subject: [PATCH] Fix version comparison (#337) fix #334 alternative implementarion for #335 --- plugins/module_utils/ah_api_module.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/plugins/module_utils/ah_api_module.py b/plugins/module_utils/ah_api_module.py index 409c7e98..4ce63739 100644 --- a/plugins/module_utils/ah_api_module.py +++ b/plugins/module_utils/ah_api_module.py @@ -17,6 +17,7 @@ import time from ansible.module_utils.basic import AnsibleModule, env_fallback +from ansible.module_utils.compat.version import LooseVersion as Version from ansible.module_utils._text import to_bytes, to_text from ansible.module_utils.six.moves.urllib.parse import urlparse, urlencode @@ -485,9 +486,9 @@ def exit_json(self, **kwargs): def get_server_version(self): """Return the automation hub/galaxy server version. - :return: the server version ("4.2.5" for example) or an empty string if + :return: the server Version("4.2.5") for example or Version("0") if that information is not available. - :rtype: str + :rtype: Version """ url = self._build_url(self.galaxy_path_prefix) try: @@ -501,4 +502,6 @@ def get_server_version(self): else: fail_msg = "Unable to get server version: {code}".format(code=response["status_code"]) self.fail_json(msg=fail_msg) - return response["json"]["server_version"].replace('dev', '') if "server_version" in response["json"] else "" + return Version( + response["json"]["server_version"].replace('dev', '') if "server_version" in response["json"] else "0" + )