1 # 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
5 # http://www.apache.org/licenses/LICENSE-2.0
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.
14 Library OperatingSystem
19 Resource %{ROBOT_DEVOPS_FOLDER}/lib/vnfd_lib.robot
20 Resource %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot
21 Resource %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot
22 Resource %{ROBOT_DEVOPS_FOLDER}/lib/connectivity_lib.robot
23 Resource %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot
24 Resource %{ROBOT_DEVOPS_FOLDER}/lib/k8scluster_lib.robot
26 Variables %{ROBOT_DEVOPS_FOLDER}/resources/k8s_04-openldap_helm_data.py
28 Suite Teardown Run Keyword And Ignore Error Suite Cleanup
33 ${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
35 ${vnf_member_index} openldap
37 ${upgrade_action} upgrade
38 ${rollback_action} rollback
43 Create Package For OpenLDAP CNF
44 [Tags] openldap sanity regression
45 Create VNFD '%{PACKAGES_FOLDER}/${vnfd_pkg}'
47 Create Package For OpenLDAP NS
48 [Tags] openldap sanity regression
49 Create NSD '%{PACKAGES_FOLDER}/${nsd_pkg}'
51 Add K8s Cluster To OSM
52 [Tags] openldap sanity regression
53 Create K8s Cluster %{K8S_CREDENTIALS} ${k8scluster_version} %{VIM_TARGET} %{VIM_MGMT_NET} ${k8scluster_name}
55 Create Network Service Instance
56 [Tags] openldap sanity regression
57 ${id}= Create Network Service ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey}
58 Set Suite Variable ${ns_id} ${id}
61 [Tags] openldap sanity regression
62 Variable Should Exist ${ns_id} msg=Network service instance is not available
63 @{vnfr_list}= Get Ns Vnfr Ids ${ns_id}
65 Set Suite Variable ${vnf_id} ${vnfr_list}[0]
67 Execute Upgrade Operation
68 [Tags] openldap sanity regression
69 Variable Should Exist ${ns_id} msg=Network service instance is not available
70 ${ns_op_id}= Execute NS K8s Action ${ns_name} ${upgrade_action} ${vnf_member_index} ${kdu_name} replicaCount=${replica_count}
72 Check Replicas After Upgrade Operation
73 [Tags] openldap sanity regression
74 Variable Should Exist ${ns_id} msg=Network service instance is not available
75 ${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
77 Should Be Equal As Integers ${count} ${replica_count}
79 Execute Rollback Operation
80 [Tags] openldap sanity regression
81 Variable Should Exist ${ns_id} msg=Network service instance is not available
82 ${ns_op_id}= Execute NS K8s Action ${ns_name} ${rollback_action} ${vnf_member_index} ${kdu_name}
84 Check Replicas After Rollback Operation
85 [Tags] openldap sanity regression
86 Variable Should Exist ${ns_id} msg=Network service instance is not available
87 ${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name}
89 Should Be Empty ${count}
91 Delete Network Service Instance
92 [Tags] openldap sanity regression cleanup
95 Remove K8s Cluster from OSM
96 [Tags] openldap sanity regression
97 Delete K8s Cluster ${k8scluster_name}
99 Delete NS Descriptor Test
100 [Tags] openldap sanity regression cleanup
101 Delete NSD ${nsd_name}
103 Delete VNF Descriptor Test
104 [Tags] openldap sanity regression cleanup
105 Delete VNFD ${vnfd_name}
110 [Documentation] Test Suit Cleanup: Deleting Descriptor, instance and vim
111 Run Keyword If Any Tests Failed Delete NS ${ns_name}
112 Run Keyword If Any Tests Failed Delete NSD ${nsd_name}
113 Run Keyword If Any Tests Failed Delete VNFD ${vnfd_name}
114 Run Keyword If Any Tests Failed Delete K8s Cluster ${k8scluster_name}