# NS instance name and configuration
${ns_name} heal_01
${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
+${ns_timeout} 6min
# SSH keys and username to be used
${publickey} %{HOME}/.ssh/id_rsa.pub
Network Service Instance Test
- ${id}= Create Network Service ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey}
+ ${id}= Create Network Service ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey} ${ns_timeout}
Set Suite Variable ${ns_id} ${id}
Get VIM Objects
Variable Should Exist ${ns_id} msg=NS is not available
@{vnf_id_list}= Get Ns Vnf List ${ns_id}
- log ${vnf_id_list}
+ Log ${vnf_id_list}
FOR ${vnf_id} IN @{vnf_id_list}
- log ${vnf_id}
+ Log ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
@{vdu_ids}= Split String ${id}
Append To List ${vim_vdus} @{vdu_ids}
END
END
END
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
Get Volume VNF Info
Variable Should Exist ${ns_id} msg=NS is not available
${ip_addr}= Get Vnf Management Ip Address ${ns_id} ${vnf_several_index}
- log ${ip_addr}
+ Log ${ip_addr}
Set Suite Variable ${vnf_volumes_ip_addr} ${ip_addr}
${vnf_id}= Get Vnf Id ${ns_id} ${vnf_several_index}
Set Suite Variable ${vnf_volumes_id} ${vnf_id}
${id}= Get VNF VIM ID ${vnf_id}
Set Suite Variable ${vdu_volumes_id} ${id}
- log ${vdu_volumes_id}
+ Log ${vdu_volumes_id}
@{volumes_ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
Set Suite Variable @{volumes_ip_list} @{volumes_ip_list}
- log @{volumes_ip_list}
+ Log @{volumes_ip_list}
Get Volumes Info
Should Be Equal As Integers ${rc} ${success_return_code} msg=${stdout} values=False
${num_virtual_storage}= Convert To Integer ${stdout}
Set Suite Variable ${vnf_num_volumes} ${num_virtual_storage}
- log ${vnf_num_volumes}
+ Log ${vnf_num_volumes}
${volumes_attached}= Get Server Property ${vdu_volumes_id} volumes_attached
${match}= Get Regexp Matches ${volumes_attached} '([0-9a-f\-]+)' 1
Set Suite Variable ${volume_id} ${match}[0]
Variable Should Exist ${vnf_volumes_ip_addr} msg=VNF is not available
Sleep 20 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_volumes_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
- log ${stdout}
+ Log ${stdout}
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
Variable Should Exist ${vnf_volumes_id} msg=VNF is not available
@{ip_list}= Get Vnf Vdur IPs ${vnf_volumes_id}
- log @{ip_list}
+ Log @{ip_list}
Should Be Equal ${ip_list} ${volumes_ip_list} IP addresses have changed after healing
${id}= Get VNF VIM ID ${vnf_volumes_id}
- log ${id}
+ Log ${id}
Should Not Be Equal ${id} ${vdu_volumes_id} VDU id has not changed after healing
${volumes_attached}= Get Server Property ${id} volumes_attached
Sleep 30 seconds Wait for SSH daemon to be up
${stdout}= Execute Remote Command Check Rc Return Output ${vnf_volumes_ip_addr} ${username} ${password} ${privatekey} sudo lsblk -l
- log ${stdout}
+ Log ${stdout}
${lines}= Get Lines Containing String ${stdout} disk
${num_lines}= Get Line Count ${lines}
Run Keyword If ${num_lines} < ${vnf_num_volumes} Fail msg=Number of disks (${num_lines}) is less than specified in VDU (${vnf_num_volumes})
END
END
END
- log Many @{vim_vdus}
- log Many @{vim_volumes}
+ Log Many @{vim_vdus}
+ Log Many @{vim_volumes}
Delete NS Instance
[Tags] cleanup
${error}= Set Variable 0
FOR ${vol_id} IN @{vim_volumes}
- log Checking if volume ${vol_id} is still in VIM
+ Log Checking if volume ${vol_id} is still in VIM
${exists}= Check If Volume Exists ${vol_id}
IF ${exists}!=0
${error}= Set Variable 1
- log Deleting volume ${vol_id}
+ Log Deleting volume ${vol_id}
Run Keyword And Ignore Error Delete Volume ${vol_id}
END
END
FOR ${vdu_id} IN @{vim_vdus}
- log Checking if server ${vdu_id} is still in VIM
+ Log Checking if server ${vdu_id} is still in VIM
${status}= Run Keyword And Ignore Error Get Server Property ${vdu_id} id
- log ${status}[0]
+ Log ${status}[0]
IF '${status}[0]' == 'PASS'
${error}= Set Variable 1
- log Deleting server ${vdu_id}
+ Log Deleting server ${vdu_id}
Run Keyword And Ignore Error Delete Server ${vdu_id}
END
END