X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=robot-systest%2Ftestsuite%2Fk8s_04-openldap_helm.robot;h=74cd4d5fbac75c1535f74f3b6fe8a8e130113168;hb=4487e9a020225f2cf891f01d63c5853e9f2deb94;hp=d5bac7693becf24833c26a7eea4c50686dbd73bd;hpb=c0b3a8e31b493a7d4091562f3757e8fa6d724ba6;p=osm%2Ftests.git diff --git a/robot-systest/testsuite/k8s_04-openldap_helm.robot b/robot-systest/testsuite/k8s_04-openldap_helm.robot index d5bac76..74cd4d5 100644 --- a/robot-systest/testsuite/k8s_04-openldap_helm.robot +++ b/robot-systest/testsuite/k8s_04-openldap_helm.robot @@ -1,3 +1,4 @@ +*** Comments *** # 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 @@ -10,100 +11,128 @@ # See the License for the specific language governing permissions and # limitations under the License. + *** Settings *** -Documentation [K8s-04] Openldap Helm chart. +Documentation [K8s-04] Openldap Helm chart. Library OperatingSystem Library String Library Collections Library Process -Resource %{ROBOT_DEVOPS_FOLDER}/lib/vnfd_lib.robot -Resource %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot -Resource %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot -Resource %{ROBOT_DEVOPS_FOLDER}/lib/connectivity_lib.robot -Resource %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot -Resource %{ROBOT_DEVOPS_FOLDER}/lib/k8scluster_lib.robot - -Variables %{ROBOT_DEVOPS_FOLDER}/resources/k8s_04-openldap_helm_data.py +Resource ../lib/vnfd_lib.resource +Resource ../lib/nsd_lib.resource +Resource ../lib/ns_lib.resource +Resource ../lib/ns_operation_lib.resource +Resource ../lib/connectivity_lib.resource +Resource ../lib/ssh_lib.resource +Resource ../lib/k8scluster_lib.resource -Force Tags k8s_04 cluster_k8s daily regression sanity +Test Tags k8s_04 cluster_k8s daily regression sanity azure Suite Teardown Run Keyword And Ignore Error Suite Cleanup *** Variables *** -${ns_id} ${EMPTY} -${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] } -${publickey} ${EMPTY} -${vnf_member_index} openldap -${kdu_name} ldap -${upgrade_action} upgrade -${rollback_action} rollback -${replica_count} 3 +# NS and VNF descriptor package folder and ids +${VNFD_PKG} openldap_knf +${VNFD_NAME} openldap_knf +${NSD_PKG} openldap_ns +${NSD_NAME} openldap_ns + +# NS instance name and configuration +${NS_NAME} ldap +${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}} ] } ] } + +${NS_ID} ${EMPTY} +${PUBLICKEY} ${EMPTY} +${VNF_MEMBER_INDEX} openldap +${KDU_NAME} ldap +${UPGRADE_ACTION} upgrade +${ROLLBACK_ACTION} rollback +${REPLICA_COUNT} 3 *** Test Cases *** Create Package For OpenLDAP CNF - Create VNFD '%{PACKAGES_FOLDER}/${vnfd_pkg}' + [Documentation] Upload NF package for the testsuite. + [Tags] prepare + Create VNFD '%{PACKAGES_FOLDER}/${VNFD_PKG}' Create Package For OpenLDAP NS - Create NSD '%{PACKAGES_FOLDER}/${nsd_pkg}' - -Add K8s Cluster To OSM - Create K8s Cluster %{K8S_CREDENTIALS} ${k8scluster_version} %{VIM_TARGET} %{VIM_MGMT_NET} ${k8scluster_name} + [Documentation] Upload NS package for the testsuite. + [Tags] prepare + Create NSD '%{PACKAGES_FOLDER}/${NSD_PKG}' Create Network Service Instance - ${id}= Create Network Service ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} - Set Suite Variable ${ns_id} ${id} + [Documentation] Instantiate NS for the testsuite. + [Tags] prepare + ${id}= Create Network Service ${NSD_NAME} %{VIM_TARGET} ${NS_NAME} ${NS_CONFIG} ${PUBLICKEY} + Log ${id} + +Get Ns Id + [Documentation] Retrieve NS instance id to be used later on. + [Tags] verify + ${id}= Get Ns Id ${NS_NAME} + Set Suite Variable ${NS_ID} ${id} Get Vnf Id - Variable Should Exist ${ns_id} msg=Network service instance is not available - @{vnfr_list}= Get Ns Vnfr Ids ${ns_id} - Log List ${vnfr_list} - Set Suite Variable ${vnf_id} ${vnfr_list}[0] + [Documentation] Retrieve NF instance id to be used later on. + [Tags] verify + Variable Should Exist ${NS_ID} msg=Network service instance is not available + @{vnfr_list}= Get Ns Vnfr Ids ${NS_ID} + Log List ${vnfr_list} + Set Suite Variable ${VNF_ID} ${vnfr_list}[0] Execute Upgrade Operation - Variable Should Exist ${ns_id} msg=Network service instance is not available - ${ns_op_id}= Execute NS K8s Action ${ns_name} ${upgrade_action} ${vnf_member_index} ${kdu_name} replicaCount=${replica_count} + [Documentation] Perform OSM action to upgrade the number of replicas of a deployment in the CNF. + [Tags] verify + Variable Should Exist ${NS_ID} msg=Network service instance is not available + ${ns_op_id}= Execute NS K8s Action ${NS_NAME} ${UPGRADE_ACTION} ${VNF_MEMBER_INDEX} ${KDU_NAME} replicaCount=${REPLICA_COUNT} + Log ${ns_op_id} Check Replicas After Upgrade Operation - Variable Should Exist ${ns_id} msg=Network service instance is not available - ${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name} - log ${count} - Should Be Equal As Integers ${count} ${replica_count} + [Documentation] Check that the number of replicas after the upgrade is the expected one. + [Tags] verify + Variable Should Exist ${NS_ID} msg=Network service instance is not available + ${count}= Get Vnf Kdu Replica Count ${VNF_ID} ${KDU_NAME} + Log ${count} + Should Be Equal As Integers ${count} ${REPLICA_COUNT} Execute Rollback Operation - Variable Should Exist ${ns_id} msg=Network service instance is not available - ${ns_op_id}= Execute NS K8s Action ${ns_name} ${rollback_action} ${vnf_member_index} ${kdu_name} + [Documentation] Perform OSM action to rollback the previous upgrade of the CNF. + [Tags] verify + Variable Should Exist ${NS_ID} msg=Network service instance is not available + ${ns_op_id}= Execute NS K8s Action ${NS_NAME} ${ROLLBACK_ACTION} ${VNF_MEMBER_INDEX} ${KDU_NAME} + Log ${ns_op_id} Check Replicas After Rollback Operation - Variable Should Exist ${ns_id} msg=Network service instance is not available - ${count}= Get Vnf Kdu Replica Count ${vnf_id} ${kdu_name} - log ${count} + [Documentation] Check that the number of replcias after the rollback is the expected one. + [Tags] verify + Variable Should Exist ${NS_ID} msg=Network service instance is not available + ${count}= Get Vnf Kdu Replica Count ${VNF_ID} ${KDU_NAME} + Log ${count} Should Be Empty ${count} Delete Network Service Instance + [Documentation] Delete NS instance. [Tags] cleanup - Delete NS ${ns_name} - -Remove K8s Cluster from OSM - [Tags] cleanup - Delete K8s Cluster ${k8scluster_name} + Delete NS ${NS_NAME} Delete NS Descriptor Test + [Documentation] Delete NS package from OSM. [Tags] cleanup - Delete NSD ${nsd_name} + Delete NSD ${NSD_NAME} Delete VNF Descriptor Test + [Documentation] Delete NF package from OSM. [Tags] cleanup - Delete VNFD ${vnfd_name} + Delete VNFD ${VNFD_NAME} *** Keywords *** Suite Cleanup - [Documentation] Test Suit Cleanup: Deleting Descriptor, instance and vim - Run Keyword If Any Tests Failed Delete NS ${ns_name} - Run Keyword If Any Tests Failed Delete NSD ${nsd_name} - Run Keyword If Any Tests Failed Delete VNFD ${vnfd_name} - Run Keyword If Any Tests Failed Delete K8s Cluster ${k8scluster_name} + [Documentation] Test Suit Cleanup: Deleting Descriptor, instance and vim + Run Keyword If Any Tests Failed Delete NS ${NS_NAME} + Run Keyword If Any Tests Failed Delete NSD ${NSD_NAME} + Run Keyword If Any Tests Failed Delete VNFD ${VNFD_NAME}