Should Not Be Empty ${server_id}
${rc} ${stdout}= Run and Return RC and Output openstack server show ${server_id} | grep flavor | awk 'NR>1{print $1}' RS='(' FS=')'
- log ${stdout}
+ Log ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
- [Return] ${stdout}
+ [Return] ${stdout}
Get Flavor Properties
Should Not Be Empty ${flavor_id}
${rc} ${stdout}= Run and Return RC and Output openstack flavor show ${flavor_id} | grep properties | awk -F '|' '{print $3}'
- log ${stdout}
+ Log ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
- [Return] ${stdout}
+ [Return] ${stdout}
Check NS Servers In VIM
- [Documentation] Check if the number of servers in Openstack by filtering by NS name is as expected.
+ [Documentation] Check if the number of servers in Openstack by filtering by NS name is as expected.
[Arguments] ${ns_name} ${number}
Should Not Be Empty ${ns_name}
${rc} ${stdout}= Run and Return RC and Output openstack server list | grep ${ns_name} | awk '{print $4}'
- log ${stdout}
+ Log ${stdout}
Should Be Equal As Integers ${rc} ${success_return_code}
- @{servers} = Split String ${stdout}
- ${n_servers}= Get Length ${servers}
+ @{servers} = Split String ${stdout}
+ ${n_servers}= Get Length ${servers}
Should Be Equal As Integers ${number} ${n_servers}
+
+
+Check If Volume Bootable
+ [Documentation] Check the volume properties and return whether it is bootable or not.
+ [Arguments] ${volume_id}
+
+ Should Not Be Empty ${volume_id}
+ ${rc} ${stdout}= Run and Return RC and Output openstack volume show ${volume_id} | grep bootable | awk '{print $4}'
+ log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+
+Get Project Quota
+ [Documentation] Get a field (ram, cores, ports, etc.) from quota in current project.
+ [Arguments] ${field}
+
+ Should Not Be Empty ${field}
+ ${rc} ${stdout}= Run and Return RC and Output openstack quota show -c ${field} -f value
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+
+Get Server Property
+ [Documentation] Get a field (flavor, image, volumes_attached, etc.) from a server.
+ [Arguments] ${server_id} ${field}
+
+ Should Not Be Empty ${server_id}
+ Should Not Be Empty ${field}
+ ${rc} ${stdout}= Run and Return RC and Output openstack server show ${server_id} -c ${field} -f value
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+
+Check VM In Server Group
+ [Documentation] Check if a given server is included in an Openstack server group
+ [Arguments] ${server_id} ${server_group_name}
+
+ Should Not Be Empty ${server_group_name}
+ Should Not Be Empty ${server_id}
+ ${rc} ${stdout}= Run and Return RC and Output openstack server group show ${server_group_name} -c members -f value
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ Should Contain ${stdout} ${server_id}
+
+
+Set Volume Id
+ [Documentation] Sets the root volume ID and ordinary volume ID by checking bootable property of volumes
+ [Arguments] ${volume_match} ${index}
+
+ Should Not Be Empty ${volume_match} ${index}
+ ${bootable}= Check If Volume Bootable ${volume_match}[${index}]
+ Set Suite Variable ${bootable}
+ IF '${bootable}'=='true'
+ Set Suite Variable ${root_vol_id} ${volume_match}[${index}]
+ IF ${index}==0
+ Set Suite Variable ${ordinary_vol_id} ${volume_match}[1]
+ ELSE
+ Set Suite Variable ${ordinary_vol_id} ${volume_match}[0]
+ END
+ END
+
+
+Get Persistent Volumes Attached To Vm
+ [Documentation] Sets the root volume ID and ordinary volume ID by checking bootable property of volumes
+ [Arguments] ${ns_id}
+
+ Variable Should Exist ${ns_id} msg=NS is not available
+ ${vnfs_list}= Get Ns Vnf List ${ns_id}
+ ${vim_id}= Get VNF VIM ID ${vnfs_list}[0]
+ ${volumes_attached}= Get Server Property ${vim_id} volumes_attached
+ log ${volumes_attached}
+ ${stdout}= Get Regexp Matches ${volumes_attached} '([0-9a-f\-]+)' 1
+ log ${stdout}
+ [Return] ${stdout}
+
+
+Check If Volume Exists
+ [Documentation] Checks if a volume id exists
+ [Arguments] ${volume_id}
+
+ Should Not Be Empty ${volume_id}
+ ${rc} ${stdout}= Run and Return RC and Output openstack volume list | grep ${volume_id} | wc -l
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+
+Delete Volume
+ [Documentation] Delete a volume by its identifier
+ [Arguments] ${volume_id}
+
+ Should Not Be Empty ${volume_id}
+ ${rc} ${stdout}= Run and Return RC and Output openstack volume delete ${volume_id}
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+
+Stop Server
+ [Documentation] Stop a server
+ [Arguments] ${server_id}
+
+ Should Not Be Empty ${server_id}
+ ${rc} ${stdout}= Run and Return RC and Output openstack server stop ${server_id}
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+
+Halt Server
+ [Documentation] Reset a server
+ [Arguments] ${server_id}
+
+ Should Not Be Empty ${server_id}
+ ${rc} ${stdout}= Run and Return RC and Output openstack server set --state error ${server_id}
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+
+Delete Server
+ [Documentation] Delete a server
+ [Arguments] ${server_id}
+
+ Should Not Be Empty ${server_id}
+ ${rc} ${stdout}= Run and Return RC and Output openstack server delete ${server_id}
+ Log ${stdout}
+ Should Be Equal As Integers ${rc} ${success_return_code}
+ [Return] ${stdout}
+
+