2 Documentation Testing openstack.
3 Library OperatingSystem
5 Library RequestsLibrary
6 Library ONAPLibrary.JSON
7 Library ONAPLibrary.Openstack
9 Resource ../../resources/openstack/keystone_interface.robot
10 Resource ../../resources/openstack/nova_interface.robot
11 Resource ../../resources/openstack/heat_interface.robot
12 Resource ../../resources/ssh/files.robot
13 Resource packet_generator_interface.robot
20 [Documentation] Attempts to login to the passed server info and verify (??). Uses server info to get public ip and locate corresponding provate key file
21 [Arguments] ${server_ip} ${timeout}=300s
22 #${file}= Catenate ${GLOBAL_VM_PRIVATE_KEY}
23 # Preload is using onap public key
24 ${file}= Catenate ${GLOBAL_ONAP_PRIVATE_KEY}
25 Wait Until Keyword Succeeds ${timeout} 5 sec Open Connection And Log In ${server_ip} root ${file}
26 ${lines}= Grep Local File "Accepted publickey" /var/log/auth.log
28 Should Not Be Empty ${lines}
31 [Arguments] ${server_list} ${stack_info} ${key_name} ${network_name}=public
32 ${server_name}= Get From Dictionary ${stack_info} ${key_name}
33 ${server}= Get From Dictionary ${server_list} ${server_name}
34 Log Entering Get Openstack Server Ip
35 ${ip}= Search Addresses ${server} ${network_name}
36 Log Returned Get Openstack Server Ip
39 Find And Reboot The Server
40 [Documentation] Code to reboot the server by teh heat server name parameter value
41 [Arguments] ${stack_info} ${server_list} ${server_name_parameter}
42 ${server_name}= Get From Dictionary ${stack_info} ${server_name_parameter}
43 ${vfw_server}= Get From Dictionary ${server_list} ${server_name}
44 ${vfw_server_id}= Get From Dictionary ${vfw_server} id
45 Reboot Server auth ${vfw_server_id}
49 [Arguments] ${server} ${network_name}
50 ${addresses} Get From Dictionary ${server} addresses
51 ${status} ${server_ip}= Run Keyword And Ignore Error Find Rackspace ${addresses} ${network_name}
52 Return From Keyword If '${status}'=='PASS' ${server_ip}
53 ${status} ${server_ip}= Run Keyword And Ignore Error Find Openstack ${addresses} ${network_name}
54 Return From Keyword If '${status}'=='PASS' ${server_ip}
55 ${status} ${server_ip}= Run Keyword And Ignore Error Find Openstack 2 ${addresses} ${network_name}
56 Return From Keyword If '${status}'=='PASS' ${server_ip}
57 Fail ${server}/${network_name} Not Found
60 [Arguments] ${addresses} ${network_name}
61 ${ips} Get From Dictionary ${addresses} ${network_name}
62 ${ip}= Get V4 IP ${ips}
66 [Arguments] ${addresses} ${network_name}
67 ${network_name}= Set Variable If '${network_name}' == 'public' external ${network_name}
68 ${ip}= Get V4 IP Openstack ${addresses} ${network_name}
72 [Arguments] ${addresses} ${network_name}
73 ${network_name}= Set Variable If '${network_name}' == 'public' floating ${network_name}
74 ${ipmaps}= Get From Dictionary ${addresses} ${GLOBAL_INJECTED_NETWORK}
75 ${ip}= Get V4 IP Openstack 2 ${ipmaps} ${network_name}
80 :FOR ${ipmap} IN @{ipmaps}
81 \ ${ip} Get From Dictionary ${ipmap} addr
82 \ ${version} Get From Dictionary ${ipmap} version
83 \ Return from Keyword if '${version}' == '4' ${ip}
87 [Arguments] ${addresses} ${testtype}
88 ${ipmaps}= Get From Dictionary ${addresses} ${testtype}
89 :FOR ${ipmap} IN @{ipmaps}
90 \ ${ip} Get From Dictionary ${ipmap} addr
91 \ ${version} Get From Dictionary ${ipmap} version
92 \ Return from Keyword if '${version}'=='4' ${ip}
96 [Arguments] ${ipmaps} ${testtype}
97 :FOR ${ipmap} IN @{ipmaps}
98 \ ${type} Get From Dictionary ${ipmap} OS-EXT-IPS:type
99 \ ${ip} Get From Dictionary ${ipmap} addr
100 \ ${version} Get From Dictionary ${ipmap} version
101 \ Return from Keyword if '${version}'=='4' and '${type}'=='${testtype}' ${ip}