From 459adf89660c365a871e3a83cd52cbb74e690950 Mon Sep 17 00:00:00 2001 From: Pilou Date: Thu, 21 Dec 2017 12:42:19 +0100 Subject: [PATCH] ios_static_route: fix broken import (#34133) * Fix broken import * doc: add ipaddress in requirements --- lib/ansible/modules/network/ios/ios_static_route.py | 12 +++++++++++- test/sanity/import/skip.txt | 1 - 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/ansible/modules/network/ios/ios_static_route.py b/lib/ansible/modules/network/ios/ios_static_route.py index 9e6477aa6b..cc97d104af 100644 --- a/lib/ansible/modules/network/ios/ios_static_route.py +++ b/lib/ansible/modules/network/ios/ios_static_route.py @@ -35,6 +35,8 @@ description: IP routes on Cisco IOS network devices. notes: - Tested against IOS 15.6 +requirements: + - Python >= 3.3 or C(ipaddress) python package options: prefix: description: @@ -102,9 +104,14 @@ from ansible.module_utils.connection import exec_command from ansible.module_utils.network.common.utils import remove_default_spec from ansible.module_utils.network.ios.ios import load_config, run_commands from ansible.module_utils.network.ios.ios import ios_argument_spec, check_args -from ipaddress import ip_network import re +try: + from ipaddress import ip_network + HAS_IPADDRESS = True +except ImportError: + HAS_IPADDRESS = False + def map_obj_to_commands(updates, module): commands = list() @@ -216,6 +223,9 @@ def main(): mutually_exclusive=mutually_exclusive, supports_check_mode=True) + if not HAS_IPADDRESS: + module.fail_json(msg="ipaddress python package is required") + warnings = list() check_args(module, warnings) diff --git a/test/sanity/import/skip.txt b/test/sanity/import/skip.txt index 26943d2429..bd0f6768ec 100644 --- a/test/sanity/import/skip.txt +++ b/test/sanity/import/skip.txt @@ -10,7 +10,6 @@ lib/ansible/modules/cloud/webfaction/webfaction_db.py lib/ansible/modules/cloud/webfaction/webfaction_domain.py lib/ansible/modules/cloud/webfaction/webfaction_mailbox.py lib/ansible/modules/cloud/webfaction/webfaction_site.py -lib/ansible/modules/network/ios/ios_static_route.py lib/ansible/modules/network/lenovo/cnos_backup.py lib/ansible/modules/network/lenovo/cnos_bgp.py lib/ansible/modules/network/lenovo/cnos_command.py