blob: 4bf9d676c128b3476cd96c8a618763a9069bb542 [file] [log] [blame]
Mark Beierl58710332022-08-03 14:14:14 -04001# Licensed under the Apache License, Version 2.0 (the "License");
2# you may not use this file except in compliance with the License.
3# You may obtain a copy of the License at
4#
5# http://www.apache.org/licenses/LICENSE-2.0
6#
7# Unless required by applicable law or agreed to in writing, software
8# distributed under the License is distributed on an "AS IS" BASIS,
9# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10# See the License for the specific language governing permissions and
11# limitations under the License.
12
13*** Settings ***
14Documentation [K8s-12] Openldap Helm chart.
15
16Library OperatingSystem
17Library String
18Library Collections
19Library Process
20
21Resource %{ROBOT_DEVOPS_FOLDER}/lib/vnfd_lib.robot
22Resource %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot
23Resource %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot
24Resource %{ROBOT_DEVOPS_FOLDER}/lib/connectivity_lib.robot
25Resource %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot
26Resource %{ROBOT_DEVOPS_FOLDER}/lib/k8scluster_lib.robot
27
garciadeblasd7f75d72022-06-25 18:38:32 +020028Force Tags k8s_12 cluster_k8s daily
Mark Beierl58710332022-08-03 14:14:14 -040029
30Suite Teardown Run Keyword And Ignore Error Suite Cleanup
31
32
33*** Variables ***
34# K8s cluster name and version
35${k8scluster_name} k8s12
36${k8scluster_version} v1
37
38# NS and VNF descriptor package folder and ids
39${vnfd_pkg} openldap_primitives_knf
40${vnfd_name} openldap_knf
41${nsd_pkg} openldap_primitives_ns
42${nsd_name} openldap_ns
43
44# NS instance name and configuration
45${ns_name} ldap
46${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}}], additionalParamsForVnf: [ {member-vnf-index: openldap, additionalParamsForKdu: [ {kdu_name: ldap, additionalParams: {service: {type: LoadBalancer }, adminPassword: admin}} ] } ] }
47
48${ns_id} ${EMPTY}
49${publickey} ${EMPTY}
50${vnf_member_index} openldap
51${kdu_name} ldap
52${upgrade_action} upgrade
53${rollback_action} rollback
54${replica_count} 3
55${action_name} get-user-info
56${action_param_cn} admin
57${action_param_dc} example.org
58
59*** Test Cases ***
60Create Package For OpenLDAP CNF
61 Create VNFD '%{PACKAGES_FOLDER}/${vnfd_pkg}'
62
63Create Package For OpenLDAP NS
64 Create NSD '%{PACKAGES_FOLDER}/${nsd_pkg}'
65
66Add K8s Cluster To OSM
67 Create K8s Cluster %{K8S_CREDENTIALS} ${k8scluster_version} %{VIM_TARGET} %{VIM_MGMT_NET} ${k8scluster_name}
68
69Create Network Service Instance
70 ${id}= Create Network Service ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey}
71
72Get Ns Id
73 ${id}= Get Ns Id ${ns_name}
74 Set Suite Variable ${ns_id} ${id}
75
76Get Vnf Id
77 Variable Should Exist ${ns_id} msg=Network service instance is not available
78 @{vnfr_list}= Get Ns Vnfr Ids ${ns_id}
79 Log List ${vnfr_list}
80 Set Suite Variable ${vnf_id} ${vnfr_list}[0]
81
82Execute Day 2 Operations
83 [Documentation] Performs one Day 2 operation.
84
85 Variable Should Exist ${ns_id} msg=Network service instance is not available
86 ${ns_op_id}= Execute NS K8s Action ${ns_name} ${action_name} ${vnf_member_index} ${kdu_name} cn=${action_param_cn} dc=${action_param_dc}
87
88Execute Upgrade Operation
89 Variable Should Exist ${ns_id} msg=Network service instance is not available
90 ${ns_op_id}= Execute NS K8s Action ${ns_name} ${upgrade_action} ${vnf_member_index} ${kdu_name} replicaCount=${replica_count}
91
92Check Replicas After Upgrade Operation
93 Variable Should Exist ${ns_id} msg=Network service instance is not available
94 ${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
garciadeblas321726f2022-12-21 11:43:06 +010095 Log ${count}
Mark Beierl58710332022-08-03 14:14:14 -040096 Should Be Equal As Integers ${count} ${replica_count}
97
98Execute Rollback Operation
99 Variable Should Exist ${ns_id} msg=Network service instance is not available
100 ${ns_op_id}= Execute NS K8s Action ${ns_name} ${rollback_action} ${vnf_member_index} ${kdu_name}
101
102Check Replicas After Rollback Operation
103 Variable Should Exist ${ns_id} msg=Network service instance is not available
104 ${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
garciadeblas321726f2022-12-21 11:43:06 +0100105 Log ${count}
Mark Beierl58710332022-08-03 14:14:14 -0400106 Should Be Empty ${count}
107
108Delete Network Service Instance
109 [Tags] cleanup
110 Delete NS ${ns_name}
111
112Remove K8s Cluster from OSM
113 [Tags] cleanup
114 Delete K8s Cluster ${k8scluster_name}
115
116Delete NS Descriptor Test
117 [Tags] cleanup
118 Delete NSD ${nsd_name}
119
120Delete VNF Descriptor Test
121 [Tags] cleanup
122 Delete VNFD ${vnfd_name}
123
124
125*** Keywords ***
126Suite Cleanup
127 [Documentation] Test Suit Cleanup: Deleting Descriptor, instance and vim
128 Run Keyword If Any Tests Failed Delete NS ${ns_name}
129 Run Keyword If Any Tests Failed Delete NSD ${nsd_name}
130 Run Keyword If Any Tests Failed Delete VNFD ${vnfd_name}
131 Run Keyword If Any Tests Failed Delete K8s Cluster ${k8scluster_name}