2 Documentation Initializes ONAP Test Web Page and Password
5 Library OperatingSystem
6 Library ONAPLibrary.Templating WITH NAME Templating
7 Resource ../resources/openstack/keystone_interface.robot
8 Resource ../resources/openstack/nova_interface.robot
11 Test Timeout 5 minutes
14 ${URLS_HTML_TEMPLATE} web/index.html.jinja
20 ${URLS_HTML} html/index.html
21 ${CREDENTIALS_FILE} /etc/lighttpd/authorization
22 #${CREDENTIALS_FILE} authorization
27 Run Keyword If '${WEB_PASSWORD}' == '' Fail "WEB Password must not be empty"
28 Run Openstack Auth Request auth
29 ${server_map}= Get Openstack Servers auth
30 ${oam_ip_map}= Create Dictionary
31 Set To Dictionary ${oam_ip_map} 10.0.0.1=onapdns
32 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_AAI_IP_ADDR}=aai1
33 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_DCAE_IP_ADDR}=dcae_controller
34 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_SO_APIHAND_IP_ADDR}=so
35 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_MR_IP_ADDR}=message_router
36 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_BC_IP_ADDR}=bus_controller
37 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_POLICY_IP_ADDR}=policy
38 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_PORTAL_IP_ADDR}=portal
39 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_SDC_IP_ADDR}=sdc
40 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_SDNC_IP_ADDR}=sdnc
41 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_MSB_IP_ADDR}=openo
42 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_CLAMP_IP_ADDR}=clamp
43 Set To Dictionary ${oam_ip_map} ${GLOBAL_INJECTED_VID_IP_ADDR}=vid
44 Set To Dictionary ${oam_ip_map} 10.0.4.105=dcae_cdap
45 Set To Dictionary ${oam_ip_map} 10.0.4.102=dcae_coll
46 Set To Dictionary ${oam_ip_map} 10.0.10.1=robot
48 ${values}= Create Dictionary
49 ${keys}= Get Dictionary Keys ${oam_ip_map}
50 :FOR ${oam_ip} IN @{keys}
51 \ ${value_name}= Get From Dictionary ${oam_ip_map} ${oam_ip}
52 \ Set Public Ip ${server_map} ${oam_ip} ${value_name} ${values}
54 Run Keyword If '${WEB_PASSWORD}' != '' Create File ${CREDENTIALS_FILE} ${WEB_USER}:${WEB_PASSWORD}
55 Set To Dictionary ${values} GLOBAL_INJECTED_ARTIFACTS_VERSION=${GLOBAL_INJECTED_ARTIFACTS_VERSION}
56 Set To Dictionary ${values} GLOBAL_INJECTED_NETWORK=${GLOBAL_INJECTED_NETWORK}
57 Set To Dictionary ${values} GLOBAL_INJECTED_NEXUS_DOCKER_REPO=${GLOBAL_INJECTED_NEXUS_DOCKER_REPO}
58 Set To Dictionary ${values} GLOBAL_INJECTED_OPENSTACK_TENANT_ID=${GLOBAL_INJECTED_OPENSTACK_TENANT_ID}
59 Set To Dictionary ${values} GLOBAL_INJECTED_REGION=${GLOBAL_INJECTED_REGION}
60 Set To Dictionary ${values} GLOBAL_INJECTED_KEYSTONE=${GLOBAL_INJECTED_KEYSTONE}
61 Set To Dictionary ${values} GLOBAL_INJECTED_VM_FLAVOR=${GLOBAL_INJECTED_VM_FLAVOR}
62 Set To Dictionary ${values} GLOBAL_INJECTED_VM_IMAGE_NAME=${GLOBAL_INJECTED_VM_IMAGE_NAME}
63 Set To Dictionary ${values} GLOBAL_INJECTED_PUBLIC_NET_ID=${GLOBAL_INJECTED_PUBLIC_NET_ID}
64 Set To Dictionary ${values} prefix=${HOSTS_PREFIX}
65 Create File From Template ${URLS_HTML_TEMPLATE} ${URLS_HTML} ${values}
68 Create File From Template
69 [Arguments] ${template} ${file} ${values}
70 Templating.Create Environment web ${GLOBAL_TEMPLATE_FOLDER}
71 ${data}= Templating.Apply Template web ${template} ${values}
72 Create File ${file} ${data}
75 [Arguments] ${server_map} ${oam_ip} ${value_name} ${values}
76 ${status} ${public_ip}= Run Keyword And Ignore Error Get Public Ip ${server_map} ${oam_ip}
77 ${public_ip}= Set Variable If '${status}' == 'PASS' ${public_ip} ${oam_ip}
78 Set To Dictionary ${values} ${value_name} ${public_ip}
81 [Arguments] ${server_map} ${oam_ip}
82 ${servers} Get Dictionary Values ${server_map}
83 :FOR ${server} IN @{servers}
84 \ ${status} ${public_ip} Run Keyword And Ignore Error Search Addresses ${server} ${oam_ip}
85 \ Return From Keyword If '${status}'=='PASS' ${public_ip}
86 Fail ${oam_ip} Server Not Found
89 [Arguments] ${server} ${oam_ip}
90 ${addresses} Get From Dictionary ${server} addresses
91 ${status} ${public_ip}= Run Keyword And Ignore Error Find Rackspace ${addresses} ${oam_ip}
92 Return From Keyword If '${status}'=='PASS' ${public_ip}
93 ${status} ${public_ip}= Run Keyword And Ignore Error Find Openstack ${addresses} ${oam_ip}
94 Return From Keyword If '${status}'=='PASS' ${public_ip}
95 ${status} ${public_ip}= Run Keyword And Ignore Error Find Openstack 2 ${addresses} ${oam_ip}
96 Return From Keyword If '${status}'=='PASS' ${public_ip}
97 Fail ${oam_ip} Server Not Found
100 [Arguments] ${addresses} ${oam_ip}
101 ${public_ips} Get From Dictionary ${addresses} public
102 ${public_ip}= Get V4 IP ${public_ips}
103 ${oam_ips} Get From Dictionary ${addresses} ${GLOBAL_INJECTED_NETWORK}
104 ${this_oam_ip}= Get V4 IP ${oam_ips}
105 Return From Keyword If '${this_oam_ip}' == '${oam_ip}' ${public_ip}
106 Fail ${oam_ip} Server Not Found
109 [Arguments] ${addresses} ${oam_ip}
110 ${public_ip}= Get V4 IP Openstack ${addresses} external
111 ${this_oam_ip}= Get V4 IP Openstack ${addresses} ${GLOBAL_INJECTED_NETWORK}
112 Return From Keyword If '${this_oam_ip}'=='${oam_ip}' ${public_ip}
113 Fail ${oam_ip} Server Not Found
116 [Arguments] ${addresses} ${oam_ip}
117 ${ipmaps}= Get From DIctionary ${addresses} ${GLOBAL_INJECTED_NETWORK}
118 ${public_ip}= Get V4 IP Openstack 2 ${ipmaps} floating
119 ${this_oam_ip}= Get V4 IP Openstack 2 ${ipmaps} fixed
120 Return From Keyword If '${this_oam_ip}'=='${oam_ip}' ${public_ip}
121 Fail ${oam_ip} Server Not Found
124 [Arguments] ${ipmaps}
125 :FOR ${ipmap} IN @{ipmaps}
126 \ ${ip} Get From Dictionary ${ipmap} addr
127 \ ${version} Get From Dictionary ${ipmap} version
128 \ Return from Keyword if '${version}' == '4' ${ip}
132 [Arguments] ${addresses} ${testtype}
133 ${ipmaps}= Get From Dictionary ${addresses} ${testtype}
134 :FOR ${ipmap} IN @{ipmaps}
135 \ ${ip} Get From Dictionary ${ipmap} addr
136 \ ${version} Get From Dictionary ${ipmap} version
137 \ Return from Keyword if '${version}'=='4' ${ip}
140 Get V4 IP Openstack 2
141 [Arguments] ${ipmaps} ${testtype}
142 :FOR ${ipmap} IN @{ipmaps}
143 \ ${type} Get From Dictionary ${ipmap} OS-EXT-IPS:type
144 \ ${ip} Get From Dictionary ${ipmap} addr
145 \ ${version} Get From Dictionary ${ipmap} version
146 \ Return from Keyword if '${version}'=='4' and '${type}'=='${testtype}' ${ip}