[PR #7267/43396efa backport][stable-7] feat(redis_info): use module_utils redis to support TLS (#7326)

feat(redis_info): use module_utils redis to support TLS (#7267)

feat(redis_info): use redis module_utils to support TLS

(cherry picked from commit 43396efa2c)

Co-authored-by: Grégoire Martini <greg5813@users.noreply.github.com>
This commit is contained in:
patchback[bot] 2023-09-29 13:00:05 +02:00 committed by GitHub
parent 7fa84e8ec7
commit adba23c223
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 53 additions and 33 deletions

View file

@ -50,7 +50,12 @@ class TestRedisInfoModule(ModuleTestCase):
set_module_args({})
self.module.main()
self.assertEqual(redis_client.call_count, 1)
self.assertEqual(redis_client.call_args, ({'host': 'localhost', 'port': 6379, 'password': None},))
self.assertEqual(redis_client.call_args, ({'host': 'localhost',
'port': 6379,
'password': None,
'ssl': False,
'ssl_ca_certs': None,
'ssl_cert_reqs': 'required'},))
self.assertEqual(result.exception.args[0]['info']['redis_version'], '999.999.999')
def test_with_parameters(self):
@ -64,7 +69,34 @@ class TestRedisInfoModule(ModuleTestCase):
})
self.module.main()
self.assertEqual(redis_client.call_count, 1)
self.assertEqual(redis_client.call_args, ({'host': 'test', 'port': 1234, 'password': 'PASS'},))
self.assertEqual(redis_client.call_args, ({'host': 'test',
'port': 1234,
'password': 'PASS',
'ssl': False,
'ssl_ca_certs': None,
'ssl_cert_reqs': 'required'},))
self.assertEqual(result.exception.args[0]['info']['redis_version'], '999.999.999')
def test_with_tls_parameters(self):
"""Test with tls parameters"""
with self.patch_redis_client(side_effect=FakeRedisClient) as redis_client:
with self.assertRaises(AnsibleExitJson) as result:
set_module_args({
'login_host': 'test',
'login_port': 1234,
'login_password': 'PASS',
'tls': True,
'ca_certs': '/etc/ssl/ca.pem',
'validate_certs': False
})
self.module.main()
self.assertEqual(redis_client.call_count, 1)
self.assertEqual(redis_client.call_args, ({'host': 'test',
'port': 1234,
'password': 'PASS',
'ssl': True,
'ssl_ca_certs': '/etc/ssl/ca.pem',
'ssl_cert_reqs': None},))
self.assertEqual(result.exception.args[0]['info']['redis_version'], '999.999.999')
def test_with_fail_client(self):