diff options
author | Jan Malkiewicz <jan.malkiewicz@nokia.com> | 2020-08-19 15:49:10 +0200 |
---|---|---|
committer | Jan Malkiewicz <jan.malkiewicz@nokia.com> | 2020-08-28 09:00:24 +0200 |
commit | 92f74ae2a3506cea96635e922c0217dc1ef96bb9 (patch) | |
tree | 054b49c3216c5075d8e3ffb40b7c502157b67f64 /k8s/tests | |
parent | 43f0c2c84a1d1c0e9dd49e41c748f56b5820760b (diff) |
Add init container support for truststore merger.
Issue-ID: DCAEGEN2-2253
Signed-off-by: Jan Malkiewicz <jan.malkiewicz@nokia.com>
Change-Id: I98f27834b36cad333728d41ec079b86a090e77f3
Diffstat (limited to 'k8s/tests')
-rw-r--r-- | k8s/tests/common.py | 35 | ||||
-rw-r--r-- | k8s/tests/test_k8sclient_deploy.py | 4 |
2 files changed, 37 insertions, 2 deletions
diff --git a/k8s/tests/common.py b/k8s/tests/common.py index 9778d1f..35d34ba 100644 --- a/k8s/tests/common.py +++ b/k8s/tests/common.py @@ -48,6 +48,9 @@ def _set_k8s_configuration(): "keystore_password" : "secret1", "truststore_password" : "secret2" }, + "truststore_merger": { + "image_tag": "repo/oom-truststore-merger:1.2.3" + }, "cbs": { "base_url": "https://config-binding-service:10443/service_component_all/test-component" } @@ -160,6 +163,25 @@ def verify_external_cert(dep): for k in expected_envs: assert (k in envs and expected_envs[k] == envs[k]) +def verify_truststore_merger(dep): + cert_container = dep.spec.template.spec.init_containers[2] + print(cert_container) + assert cert_container.image == "repo/oom-truststore-merger:1.2.3" + assert cert_container.name == "truststore-merger" + assert len(cert_container.volume_mounts) == 1 + assert cert_container.volume_mounts[0].name == "tls-info" + assert cert_container.volume_mounts[0].mount_path == "/opt/dcae/cacert/" + + expected_envs = { + "TRUSTSTORES_PATHS": "/opt/dcae/cacert/trust.jks:/opt/dcae/cacert/external/truststore.p12", + "TRUSTSTORES_PASSWORDS_PATHS": "/opt/dcae/cacert/trust.pass:/opt/dcae/cacert/external/truststore.pass", + } + + envs = {k.name: k.value for k in cert_container.env} + for k in expected_envs: + assert (k in envs and expected_envs[k] == envs[k]) + + def do_deploy(tls_info=None): ''' Common deployment operations ''' import k8sclient.k8sclient @@ -172,7 +194,7 @@ def do_deploy(tls_info=None): if tls_info: kwargs["tls_info"] = tls_info - dep, deployment_description = k8sclient.k8sclient.deploy("k8stest", "testcomponent", "example.com/testcomponent:1.4.3", 1, False, k8s_test_config, **kwargs) + dep, deployment_description = k8sclient.k8sclient.deploy(k8s_ctx(), "k8stest", "testcomponent", "example.com/testcomponent:1.4.3", 1, False, k8s_test_config, **kwargs) # Make sure all of the basic k8s parameters are correct verify_common(dep, deployment_description) @@ -190,9 +212,18 @@ def do_deploy_ext(ext_tls_info): kwargs['resources'] = _set_resources() kwargs["external_cert"] = ext_tls_info - dep, deployment_description = k8sclient.k8sclient.deploy("k8stest", "testcomponent", "example.com/testcomponent:1.4.3", 1, False, k8s_test_config, **kwargs) + dep, deployment_description = k8sclient.k8sclient.deploy(k8s_ctx(), "k8stest", "testcomponent", "example.com/testcomponent:1.4.3", 1, False, k8s_test_config, **kwargs) # Make sure all of the basic k8s parameters are correct verify_common(dep, deployment_description) return dep, deployment_description + +class k8s_logger: + def info(self, text): + print(text) + +class k8s_ctx: + logger = k8s_logger() + + diff --git a/k8s/tests/test_k8sclient_deploy.py b/k8s/tests/test_k8sclient_deploy.py index 30490a6..a325b68 100644 --- a/k8s/tests/test_k8sclient_deploy.py +++ b/k8s/tests/test_k8sclient_deploy.py @@ -25,6 +25,7 @@ import pytest from common import do_deploy from common import do_deploy_ext from common import verify_external_cert +from common import verify_truststore_merger def test_deploy_full_tls(mockk8sapi): ''' Deploy component with a full TLS configuration, to act as a server ''' @@ -67,3 +68,6 @@ def test_deploy_external_cert(mockk8sapi): # Make sure all of the external init container parameters are correct verify_external_cert(dep) + verify_truststore_merger(dep) + + |