From 212340bf0c237fc86cbaf27690d53e27d5a201ad Mon Sep 17 00:00:00 2001 From: Tim Rupp Date: Sat, 2 Dec 2017 20:17:14 -0800 Subject: [PATCH] Fixes bug converning filenames with dots (#33493) The name detminator was incorrect. This fixes it and fixes unit tests related things that were broken downstream --- .../modules/network/f5/bigip_ssl_certificate.py | 14 ++++++-------- lib/ansible/modules/network/f5/bigip_ssl_key.py | 7 +++---- .../network/f5/test_bigip_ssl_certificate.py | 6 ++++-- .../units/modules/network/f5/test_bigip_ssl_key.py | 6 ++++-- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/lib/ansible/modules/network/f5/bigip_ssl_certificate.py b/lib/ansible/modules/network/f5/bigip_ssl_certificate.py index ae60bb00ec..01148490f8 100644 --- a/lib/ansible/modules/network/f5/bigip_ssl_certificate.py +++ b/lib/ansible/modules/network/f5/bigip_ssl_certificate.py @@ -248,11 +248,10 @@ class KeyParameters(Parameters): @property def key_filename(self): - fname, fext = os.path.splitext(self.name) - if fext == '': - return fname + '.key' - else: + if self.name.endswith('.key'): return self.name + else: + return self.name + '.key' @property def key_checksum(self): @@ -308,11 +307,10 @@ class CertParameters(Parameters): @property def cert_filename(self): - fname, fext = os.path.splitext(self.name) - if fext == '': - return fname + '.crt' - else: + if self.name.endswith('.crt'): return self.name + else: + return self.name + '.crt' @property def cert_src(self): diff --git a/lib/ansible/modules/network/f5/bigip_ssl_key.py b/lib/ansible/modules/network/f5/bigip_ssl_key.py index dc4471fd50..54bf0c5026 100644 --- a/lib/ansible/modules/network/f5/bigip_ssl_key.py +++ b/lib/ansible/modules/network/f5/bigip_ssl_key.py @@ -167,11 +167,10 @@ class Parameters(AnsibleF5Parameters): @property def key_filename(self): - fname, fext = os.path.splitext(self.name) - if fext == '': - return fname + '.key' - else: + if self.name.endswith('.key'): return self.name + else: + return self.name + '.key' @property def key_checksum(self): diff --git a/test/units/modules/network/f5/test_bigip_ssl_certificate.py b/test/units/modules/network/f5/test_bigip_ssl_certificate.py index bdacfa2c99..950feeca71 100644 --- a/test/units/modules/network/f5/test_bigip_ssl_certificate.py +++ b/test/units/modules/network/f5/test_bigip_ssl_certificate.py @@ -15,9 +15,9 @@ if sys.version_info < (2, 7): raise SkipTest("F5 Ansible modules require Python >= 2.7") from ansible.compat.tests import unittest -from ansible.compat.tests.mock import patch, Mock +from ansible.compat.tests.mock import Mock +from ansible.compat.tests.mock import patch from ansible.module_utils.f5_utils import AnsibleF5Client -from units.modules.utils import set_module_args try: from library.bigip_ssl_certificate import ArgumentSpec @@ -27,6 +27,7 @@ try: from library.bigip_ssl_certificate import HAS_F5SDK from library.bigip_ssl_certificate import KeyManager from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError + from test.unit.modules.utils import set_module_args except ImportError: try: from ansible.modules.network.f5.bigip_ssl_certificate import ArgumentSpec @@ -36,6 +37,7 @@ except ImportError: from ansible.modules.network.f5.bigip_ssl_certificate import HAS_F5SDK from ansible.modules.network.f5.bigip_ssl_certificate import KeyManager from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError + from units.modules.utils import set_module_args except ImportError: raise SkipTest("F5 Ansible modules require the f5-sdk Python library") diff --git a/test/units/modules/network/f5/test_bigip_ssl_key.py b/test/units/modules/network/f5/test_bigip_ssl_key.py index ee575868a3..2ee4eaa3ec 100644 --- a/test/units/modules/network/f5/test_bigip_ssl_key.py +++ b/test/units/modules/network/f5/test_bigip_ssl_key.py @@ -15,9 +15,9 @@ if sys.version_info < (2, 7): raise SkipTest("F5 Ansible modules require Python >= 2.7") from ansible.compat.tests import unittest -from ansible.compat.tests.mock import patch, Mock +from ansible.compat.tests.mock import Mock +from ansible.compat.tests.mock import patch from ansible.module_utils.f5_utils import AnsibleF5Client -from units.modules.utils import set_module_args try: from library.bigip_ssl_key import ArgumentSpec @@ -25,6 +25,7 @@ try: from library.bigip_ssl_key import ModuleManager from library.bigip_ssl_key import HAS_F5SDK from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError + from test.unit.modules.utils import set_module_args except ImportError: try: from ansible.modules.network.f5.bigip_ssl_key import ArgumentSpec @@ -32,6 +33,7 @@ except ImportError: from ansible.modules.network.f5.bigip_ssl_key import ModuleManager from ansible.modules.network.f5.bigip_ssl_key import HAS_F5SDK from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError + from units.modules.utils import set_module_args except ImportError: raise SkipTest("F5 Ansible modules require the f5-sdk Python library")