diff options
-rw-r--r-- | changelogs/fragments/120-remove-ipaddress.yaml | 3 | ||||
-rw-r--r-- | plugins/module_utils/network/vyos/utils/utils.py | 14 |
2 files changed, 14 insertions, 3 deletions
diff --git a/changelogs/fragments/120-remove-ipaddress.yaml b/changelogs/fragments/120-remove-ipaddress.yaml new file mode 100644 index 00000000..71dc3422 --- /dev/null +++ b/changelogs/fragments/120-remove-ipaddress.yaml @@ -0,0 +1,3 @@ +--- +major_changes: + - ipaddress is no longer in ansible.netcommon. For Python versions without ipaddress (< 3.0), the ipaddress package is now required. diff --git a/plugins/module_utils/network/vyos/utils/utils.py b/plugins/module_utils/network/vyos/utils/utils.py index 7ce46883..f6ac9f54 100644 --- a/plugins/module_utils/network/vyos/utils/utils.py +++ b/plugins/module_utils/network/vyos/utils/utils.py @@ -8,9 +8,14 @@ from __future__ import absolute_import, division, print_function __metaclass__ = type from ansible.module_utils.six import iteritems -from ansible_collections.ansible.netcommon.plugins.module_utils.compat import ( - ipaddress, -) +from ansible.module_utils.basic import missing_required_lib + +try: + import ipaddress + + HAS_IPADDRESS = True +except ImportError: + HAS_IPADDRESS = False def search_obj_in_list(name, lst, key="name"): @@ -212,6 +217,9 @@ def get_ip_address_version(address): :param address: IP address :return: """ + if not HAS_IPADDRESS: + raise Exception(missing_required_lib("ipaddress")) + try: address = unicode(address) except NameError: |