diff --git a/lib/ansible/modules/network/f5/bigip_tunnel.py b/lib/ansible/modules/network/f5/bigip_tunnel.py index 4433ef82b45..c4fd87f4355 100644 --- a/lib/ansible/modules/network/f5/bigip_tunnel.py +++ b/lib/ansible/modules/network/f5/bigip_tunnel.py @@ -603,8 +603,10 @@ def main(): client = F5RestClient(**module.params) mm = ModuleManager(module=module, client=client) results = mm.exec_module() + cleanup_tokens(client) exit_json(module, results, client) except F5ModuleError as ex: + cleanup_tokens(client) fail_json(module, ex, client) diff --git a/test/units/modules/network/f5/test_bigip_tunnel.py b/test/units/modules/network/f5/test_bigip_tunnel.py index cb6facc277c..7eeefde3f08 100644 --- a/test/units/modules/network/f5/test_bigip_tunnel.py +++ b/test/units/modules/network/f5/test_bigip_tunnel.py @@ -8,16 +8,12 @@ __metaclass__ = type import os import json -import pytest import sys from nose.plugins.skip import SkipTest if sys.version_info < (2, 7): raise SkipTest("F5 Ansible modules require Python >= 2.7") -from units.compat import unittest -from units.compat.mock import Mock -from units.compat.mock import patch from ansible.module_utils.basic import AnsibleModule try: @@ -25,17 +21,25 @@ try: from library.modules.bigip_tunnel import ModuleParameters from library.modules.bigip_tunnel import ModuleManager from library.modules.bigip_tunnel import ArgumentSpec - from library.module_utils.network.f5.common import F5ModuleError - from library.module_utils.network.f5.common import iControlUnexpectedHTTPError - from test.unit.modules.utils import set_module_args + + # In Ansible 2.8, Ansible changed import paths. + from test.units.compat import unittest + from test.units.compat.mock import Mock + from test.units.compat.mock import patch + + from test.units.modules.utils import set_module_args except ImportError: try: from ansible.modules.network.f5.bigip_tunnel import ApiParameters from ansible.modules.network.f5.bigip_tunnel import ModuleParameters from ansible.modules.network.f5.bigip_tunnel import ModuleManager from ansible.modules.network.f5.bigip_tunnel import ArgumentSpec - from ansible.module_utils.network.f5.common import F5ModuleError - from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError + + # Ansible 2.8 imports + from units.compat import unittest + from units.compat.mock import Mock + from units.compat.mock import patch + from units.modules.utils import set_module_args except ImportError: raise SkipTest("F5 Ansible modules require the f5-sdk Python library")