summaryrefslogtreecommitdiffstats
path: root/k8s/tests/test_k8sclient_deploy.py
diff options
context:
space:
mode:
authorJack Lucas <jflucas@research.att.com>2019-06-25 18:52:55 -0400
committerJack Lucas <jflucas@research.att.com>2019-07-01 11:07:30 -0400
commit9c094d0581c46d3d107facdc55cb2cc7a1d9f765 (patch)
tree7bb29d659b23295d3a3f67f7e1be054a8eb51544 /k8s/tests/test_k8sclient_deploy.py
parenta9e0e1c94d9b1fee783ce2db3df962b6fec5149b (diff)
Add TLS support for client-only apps
Also enhance unit tests to do more robust checking of results. Issue-ID: DCAEGEN2-1550 Change-Id: Icf6e5357d828e19db73bb58b98fd60e9f111d0dc Signed-off-by: Jack Lucas <jflucas@research.att.com>
Diffstat (limited to 'k8s/tests/test_k8sclient_deploy.py')
-rw-r--r--k8s/tests/test_k8sclient_deploy.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/k8s/tests/test_k8sclient_deploy.py b/k8s/tests/test_k8sclient_deploy.py
new file mode 100644
index 0000000..4e8a11d
--- /dev/null
+++ b/k8s/tests/test_k8sclient_deploy.py
@@ -0,0 +1,48 @@
+# ============LICENSE_START=======================================================
+# org.onap.dcae
+# ================================================================================
+# Copyright (c) 2018-2019 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+
+# Test k8sclient deployment functions
+# Verify that for a given configuration and set of inputs, k8sclient generates the proper
+# Kubernetes entities
+
+import pytest
+from common import do_deploy
+
+def test_deploy_full_tls(mockk8sapi):
+ ''' Deploy component with a full TLS configuration, to act as a server '''
+
+ dep, deployment_description = do_deploy({"use_tls": True, "cert_directory": "/path/to/container/cert/directory" })
+
+ app_container = dep.spec.template.spec.containers[0]
+ assert app_container.volume_mounts[2].mount_path == "/path/to/container/cert/directory"
+
+def test_deploy_tls_off(mockk8sapi):
+ ''' TLS client only, but with cert directory configured '''
+
+ dep, deployment_description = do_deploy({"use_tls": False, "cert_directory": "/path/to/container/cert/directory" })
+
+ app_container = dep.spec.template.spec.containers[0]
+ assert app_container.volume_mounts[2].mount_path == "/path/to/container/cert/directory"
+
+def test_deploy_no_tls_info(mockk8sapi):
+ ''' TLS client only, but with cert directory configured '''
+
+ dep, deployment_description = do_deploy()
+
+ app_container = dep.spec.template.spec.containers[0]
+ assert app_container.volume_mounts[2].mount_path == "/opt/dcae/cacert"