X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=robot-systest%2Ftestsuite%2Fheal_02-scale_vdu_healing.robot;h=ffdcb854684c39a339221b5baeb749bc16940488;hb=dba7f6b9d46ed6b7bb8d6f6fb8465a61721c5944;hp=c7ea7c793fc139003dc3592bba55fdd7b20d1673;hpb=166c8913bba24b153968d0a739313b129e3d3432;p=osm%2Ftests.git diff --git a/robot-systest/testsuite/heal_02-scale_vdu_healing.robot b/robot-systest/testsuite/heal_02-scale_vdu_healing.robot index c7ea7c7..ffdcb85 100644 --- a/robot-systest/testsuite/heal_02-scale_vdu_healing.robot +++ b/robot-systest/testsuite/heal_02-scale_vdu_healing.robot @@ -13,7 +13,7 @@ *** Settings *** -Documentation [HEAL-02] Healing of scaled charm VDUs +Documentation [HEAL-02] Healing of scaled VDUs Library OperatingSystem Library String @@ -40,15 +40,15 @@ ${VNFD_VOLUMES_PKG} several_volumes_vnf ${VNFD_VOLUMES_NAME} several_volumes-vnf ${VDU_VOLUMES_NAME} several_volumes-VM ${VNF_SEVERAL_INDEX} several_volumes_vnf -${VNFD_CHARM_PKG} charm-packages/native_manual_scale_charm_vnf -${VNFD_CHARM_NAME} native_manual_scale_charm-vnf -${VDU_CHARM_NAME} mgmtVM -${VNF_CHARM_INDEX} charm_vnf -${VNF_CHARM_SCALING_GROUP} manual-scaling_mgmtVM -${VNF_CHARM_CLOUDINIT_FILE} /root/helloworld.txt -${VNF_CHARM_DAY1_FILE} /home/ubuntu/first-touch -${NSD_PKG} volumes_nativecharm_ns -${NSD_NAME} volumes_nativecharm-ns +${VNFD_MANUALSCALE_PKG} manual_scale_vnf +${VNFD_MANUALSCALE_NAME} manual_scale-vnf +${VDU_MANUALSCALE_NAME} mgmtVM +${VNF_MANUALSCALE_INDEX} manual_scale_vnf +${VNF_MANUALSCALE_SCALING_GROUP} manual-scaling_mgmtVM +${VNF_MANUALSCALE_CLOUDINIT_FILE} /root/helloworld.txt +${VNF_MANUALSCALE_DAY1_FILE} /home/ubuntu/first-touch +${NSD_PKG} volumes_healing_ns +${NSD_NAME} volumes_healing-ns # NS instance name and configuration ${FLAVOR_NAME_PREFIX} osm.heal02 @@ -71,7 +71,7 @@ ${SUCCESS_RETURN_CODE} 0 *** Test Cases *** Create VNF Descriptors [Documentation] Upload VNF packages for the testsuite. - Create VNFD '%{PACKAGES_FOLDER}/${VNFD_CHARM_PKG}' + Create VNFD '%{PACKAGES_FOLDER}/${VNFD_MANUALSCALE_PKG}' Create VNFD '%{PACKAGES_FOLDER}/${VNFD_VOLUMES_PKG}' Create NS Descriptor @@ -87,7 +87,7 @@ Create Test Flavor Network Service Instance Test [Documentation] Instantiate NS for the testsuite using the previously created flavor. - ${ns_config}= Set Variable {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}}],vnf: [ {member-vnf-index: charm_vnf, vdu: [{ id: mgmtVM, vim-flavor-id: ${FLAVOR_ID}}]}] } + ${ns_config}= Set Variable {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}}],vnf: [ {member-vnf-index: manual_scale_vnf, vdu: [{ id: mgmtVM, vim-flavor-id: ${FLAVOR_ID}}]}] } ${id}= Create Network Service ${NSD_NAME} %{VIM_TARGET} ${NS_NAME} ${ns_config} ${PUBLICKEY} ${NS_TIMEOUT} Set Suite Variable ${NS_ID} ${id} @@ -100,15 +100,15 @@ Get NS Id Set Suite Variable ${NS_ID} ${id} END -Scale Out Charm VNF - [Documentation] Perform a manual scale-out operation of the charm VNF. - ${vnf_id}= Get Vnf Id ${NS_ID} ${VNF_CHARM_INDEX} - Set Suite Variable ${VNF_CHARM_ID} ${vnf_id} - @{vdur_list}= Get Vnf Vdur Names ${VNF_CHARM_ID} +Scale Out Manual Scale VNF + [Documentation] Perform a manual scale-out operation of the manual-scale VNF. + ${vnf_id}= Get Vnf Id ${NS_ID} ${VNF_MANUALSCALE_INDEX} + Set Suite Variable ${VNF_MANUALSCALE_ID} ${vnf_id} + @{vdur_list}= Get Vnf Vdur Names ${VNF_MANUALSCALE_ID} ${vdurs}= Get Length ${vdur_list} Set Suite Variable ${INITIAL_VDUR_COUNT} ${vdurs} - Execute Manual VNF Scale ${NS_NAME} ${VNF_CHARM_INDEX} ${VNF_CHARM_SCALING_GROUP} SCALE_OUT ${SCALE_WAIT_TIME} - @{vdur_list}= Get Vnf Vdur Names ${VNF_CHARM_ID} + Execute Manual VNF Scale ${NS_NAME} ${VNF_MANUALSCALE_INDEX} ${VNF_MANUALSCALE_SCALING_GROUP} SCALE_OUT ${SCALE_WAIT_TIME} + @{vdur_list}= Get Vnf Vdur Names ${VNF_MANUALSCALE_ID} ${vdurs}= Get Length ${vdur_list} IF ${vdurs} != ${INITIAL_VDUR_COUNT} + 1 Fail msg=There is no new VDU records in the VNF after Scale Out @@ -135,47 +135,47 @@ Get VIM Objects Log Many @{VIM_VDUS} Log Many @{VIM_VOLUMES} -Get Charm VNF Info - [Documentation] Get VDU ID and IP addresses of the charm VNF and stores them in VDU_CHARM_IDS and CHARM_IP_LIST. +Get Manual Scale VNF Info + [Documentation] Get VDU ID and IP addresses of the manual scale VNF and stores them in VDU_MANUALSCALE_IDS and MANUALSCALE_IP_LIST. Variable Should Exist ${NS_ID} msg=NS is not available ${variables}= Get Variables - IF not "\${vnf_charm_id}" in "${variables}" - ${vnf_id}= Get Vnf Id ${NS_ID} ${VNF_CHARM_INDEX} - Set Suite Variable ${VNF_CHARM_ID} ${vnf_id} + IF not "\${VNF_MANUALSCALE_ID}" in "${variables}" + ${vnf_id}= Get Vnf Id ${NS_ID} ${VNF_MANUALSCALE_INDEX} + Set Suite Variable ${VNF_MANUALSCALE_ID} ${vnf_id} END - ${id}= Get VNF VIM ID ${VNF_CHARM_ID} - @{VDU_CHARM_IDS}= Split String ${id} - Set Suite Variable @{VDU_CHARM_IDS} @{VDU_CHARM_IDS} - Log ${VDU_CHARM_IDS}[1] - @{CHARM_IP_LIST}= Get Vnf Vdur IPs ${VNF_CHARM_ID} - Set Suite Variable @{CHARM_IP_LIST} @{CHARM_IP_LIST} - -Halt Charm VDU - [Documentation] Halt one of the VM of the charm VNF. - Variable Should Exist @{VDU_CHARM_IDS} msg=VDU is not available - Halt Server ${VDU_CHARM_IDS}[1] + ${id}= Get VNF VIM ID ${VNF_MANUALSCALE_ID} + @{vdu_manualscale_ids}= Split String ${id} + Set Suite Variable @{VDU_MANUALSCALE_IDS} @{vdu_manualscale_ids} + Log ${VDU_MANUALSCALE_IDS}[1] + @{manualscale_ip_list}= Get Vnf Vdur IPs ${VNF_MANUALSCALE_ID} + Set Suite Variable @{MANUALSCALE_IP_LIST} @{manualscale_ip_list} + +Halt Manual Scale VDU + [Documentation] Halt one of the VM of the Manual Scale VNF. + Variable Should Exist @{VDU_MANUALSCALE_IDS} msg=VDU is not available + Halt Server ${VDU_MANUALSCALE_IDS}[1] Sleep 15 -Heal Charm VDU +Heal Manual Scale VDU [Documentation] Heal manually via OSM commands all stopped VMs . They should be started again. - Variable Should Exist ${VNF_CHARM_ID} msg=VNF is not available - Heal Network Service ${NS_ID} --vnf ${VNF_CHARM_ID} --cause "Heal VM of charm_vnf" --vdu ${VDU_CHARM_NAME} --count-index 1 --run-day1 + Variable Should Exist ${VNF_MANUALSCALE_ID} msg=VNF is not available + Heal Network Service ${NS_ID} --vnf ${VNF_MANUALSCALE_ID} --cause "Heal VM of manual_scale_vnf" --vdu ${VDU_MANUALSCALE_NAME} --count-index 1 --run-day1 Check VNF After Healing [Documentation] Check that the IDs of the VM and volumes have not changed after healing. - Variable Should Exist ${VNF_CHARM_ID} msg=VNF is not available - @{ip_list}= Get Vnf Vdur IPs ${VNF_CHARM_ID} - Should Be Equal ${ip_list} ${CHARM_IP_LIST} IP addresses have changed after healing - ${id}= Get VNF VIM ID ${VNF_CHARM_ID} + Variable Should Exist ${VNF_MANUALSCALE_ID} msg=VNF is not available + @{ip_list}= Get Vnf Vdur IPs ${VNF_MANUALSCALE_ID} + Should Be Equal ${ip_list} ${MANUALSCALE_IP_LIST} IP addresses have changed after healing + ${id}= Get VNF VIM ID ${VNF_MANUALSCALE_ID} @{ids}= Split String ${id} - Should Be Equal ${VDU_CHARM_IDS}[0] ${ids}[0] VDU[0] id has changed after healing - Should Not Be Equal ${VDU_CHARM_IDS}[1] ${ids}[1] VDU[1] id has not changed after healing - Should Be Equal ${VDU_CHARM_IDS}[2] ${ids}[2] VDU[2] id has changed after healing - ${ip}= Get Vdu Attribute ${VNF_CHARM_ID} ip-address 1 - ${stdout}= Execute Remote Command Check Rc Return Output ${ip} ${USERNAME} ${PASSWORD} ${PRIVATEKEY} sudo ls ${VNF_CHARM_CLOUDINIT_FILE} + Should Be Equal ${VDU_MANUALSCALE_IDS}[0] ${ids}[0] VDU[0] id has changed after healing + Should Not Be Equal ${VDU_MANUALSCALE_IDS}[1] ${ids}[1] VDU[1] id has not changed after healing + Should Be Equal ${VDU_MANUALSCALE_IDS}[2] ${ids}[2] VDU[2] id has changed after healing + ${ip}= Get Vdu Attribute ${VNF_MANUALSCALE_ID} ip-address 1 + ${stdout}= Execute Remote Command Check Rc Return Output ${ip} ${USERNAME} ${PASSWORD} ${PRIVATEKEY} sudo ls ${VNF_MANUALSCALE_CLOUDINIT_FILE} Log ${stdout} - Check If Remote File Exists ${ip} ${USERNAME} ${PASSWORD} ${PRIVATEKEY} ${VNF_CHARM_DAY1_FILE} - ${vim_info}= Get Vdu Attribute ${VNF_CHARM_ID} vim_info 1 + Check If Remote File Exists ${ip} ${USERNAME} ${PASSWORD} ${PRIVATEKEY} ${VNF_MANUALSCALE_DAY1_FILE} + ${vim_info}= Get Vdu Attribute ${VNF_MANUALSCALE_ID} vim_info 1 Should Contain ${vim_info} id: ${FLAVOR_ID} msg=Flavor ID is incorrect Update VIM Objects @@ -221,7 +221,7 @@ Delete VNF Descriptors [Documentation] Delete VNF packages from OSM. [Tags] cleanup Delete VNFD ${VNFD_VOLUMES_NAME} - Delete VNFD ${VNFD_CHARM_NAME} + Delete VNFD ${VNFD_MANUALSCALE_NAME} Delete Remaining Objects In VIM [Documentation] Delete any remaining objects (volumes, VMs, etc.) in the VIM. @@ -235,7 +235,7 @@ Suite Cleanup 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_VOLUMES_NAME} - Run Keyword If Any Tests Failed Delete VNFD ${VNFD_CHARM_NAME} + Run Keyword If Any Tests Failed Delete VNFD ${VNFD_MANUALSCALE_NAME} Run Keyword If Any Tests Failed Delete Objects In VIM Delete Objects In VIM