replace aai, closeloop, sdc with jinja
[testsuite.git] / robot / resources / stack_validation / validate_common.robot
1 *** Settings ***
2 Documentation     Testing openstack.
3 Library    OperatingSystem
4 Library    SSHLibrary
5 Library    RequestsLibrary
6 Library    ONAPLibrary.JSON
7 Library    ONAPLibrary.Openstack
8 Library    Collections
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
14
15
16 *** Variables ***
17
18 *** Keywords ***
19 Wait For Server
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
27     Log    ${lines}
28     Should Not Be Empty    ${lines}
29
30 Get Server Ip
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
37     [Return]    ${ip}
38
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}
46
47
48 Search Addresses
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
58
59 Find Rackspace
60     [Arguments]   ${addresses}   ${network_name}
61     ${ips}   Get From Dictionary   ${addresses}   ${network_name}
62     ${ip}=   Get V4 IP   ${ips}
63     [Return]   ${ip}
64
65 Find Openstack
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}
69     [Return]   ${ip}
70
71 Find Openstack 2
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}
76     [Return]   ${ip}
77
78 Get V4 IP
79     [Arguments]   ${ipmaps}
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}
84     Fail  No Version 4 IP
85
86 Get V4 IP Openstack
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}
93     Fail  No Version 4 IP
94
95 Get V4 IP Openstack 2
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}
102     Fail  No Version 4 IP