Bug 2327 fix to verify ipaddress in sol003_02 testsuite
[osm/tests.git] / robot-systest / testsuite / epa_05-epa_underlay_passthrough.robot
index 7a579bf..a81de08 100644 (file)
@@ -1,3 +1,4 @@
+*** Comments ***
 #   Licensed under the Apache License, Version 2.0 (the "License");
 #   you may not use this file except in compliance with the License.
 #   You may obtain a copy of the License at
 #   See the License for the specific language governing permissions and
 #   limitations under the License.
 
+
 *** Settings ***
-Documentation     [EPA-05] EPA underlay PASSTHROUGH.
+Documentation   [EPA-05] EPA underlay PASSTHROUGH.
 
 Library   OperatingSystem
 Library   String
 Library   Collections
 Library   SSHLibrary
 
-Resource   %{ROBOT_DEVOPS_FOLDER}/lib/vnfd_lib.robot
-Resource   %{ROBOT_DEVOPS_FOLDER}/lib/vnf_lib.robot
-Resource   %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot
-Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot
-Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot
-Resource   %{ROBOT_DEVOPS_FOLDER}/lib/openstack_lib.robot
-
-Variables   %{ROBOT_DEVOPS_FOLDER}/resources/epa_05-epa_underlay_passthrough.py
+Resource   ../lib/vnfd_lib.resource
+Resource   ../lib/vnf_lib.resource
+Resource   ../lib/nsd_lib.resource
+Resource   ../lib/ns_lib.resource
+Resource   ../lib/ssh_lib.resource
+Resource   ../lib/openstack_lib.resource
 
-Force Tags   epa_05   cluster_epa   daily   regresssion
+Test Tags   epa_05   cluster_epa
 
 Suite Teardown   Run Keyword And Ignore Error   Suite Cleanup
 
 
 *** Variables ***
-${vnf_member_index_1}   1
-${vnf_member_index_2}   2
-${username}   ubuntu
-${password}   osm4u
-${ns_config}   {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} , {name: datanet, ip-profile: {ip-version: ipv4, subnet-address: "${datanet_subnet}"}, vnfd-connection-point-ref: [ {member-vnf-index-ref: "1", vnfd-connection-point-ref: vnf-data-ext, ip-address: "${datanet_ip1}"}, {member-vnf-index-ref: "2", vnfd-connection-point-ref: vnf-data-ext, ip-address: "${datanet_ip2}"}]} ] }
-${success_return_code}   0
+# NS and VNF descriptor package folder and ids
+${VNFD_PKG}   epa_1vm_passthrough_vnf
+${VNFD_NAME}   epa_1vm_passthrough-vnf
+${NSD_PKG}   epa_1vm_passthrough_ns
+${NSD_NAME}   epa_1vm_passthrough-ns
+${NS_NAME}   epa_05
+
+# Fixed IPs and subnet for datanet VL
+${DATANET_SUBNET}   192.168.110.0/24
+${DATANET_IP1}   192.168.110.11
+${DATANET_IP2}   192.168.110.22
+
+${VNF_MEMBER_INDEX_1}   vnf1
+${VNF_MEMBER_INDEX_2}   vnf2
+${USERNAME}   ubuntu
+${PASSWORD}   osm4u
+${NS_CONFIG}   {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} , {name: datanet, ip-profile: {ip-version: ipv4, subnet-address: "${DATANET_SUBNET}"}, vnfd-connection-point-ref: [ {member-vnf-index-ref: "${VNF_MEMBER_INDEX_1}", vnfd-connection-point-ref: vnf-data-ext, ip-address: "${DATANET_IP1}"}, {member-vnf-index-ref: "${VNF_MEMBER_INDEX_2}", vnfd-connection-point-ref: vnf-data-ext, ip-address: "${DATANET_IP2}"}]} ] }
+${SUCCESS_RETURN_CODE}   0
 
 
 *** Test Cases ***
 Create VNF Descriptor
-
-    Remove Environment Variable  OVERRIDES
-    Create VNFD  '%{PACKAGES_FOLDER}/${vnfd_pkg}'
-
+    [Documentation]   Upload VNF package for the testsuite.
+    Remove Environment Variable   OVERRIDES
+    Create VNFD   '%{PACKAGES_FOLDER}/${VNFD_PKG}'
 
 Create NS Descriptor
-
-    Create NSD  '%{PACKAGES_FOLDER}/${nsd_pkg}'
-
+    [Documentation]   Upload NS package for the testsuite.
+    Create NSD   '%{PACKAGES_FOLDER}/${NSD_PKG}'
 
 Instantiate Network Service
-
-    ${id}=  Create Network Service  ${nsd_name}  %{VIM_TARGET}  ${ns_name}  ${ns_config}  ${publickey}
-    Set Suite Variable  ${ns_id}  ${id}
-
+    [Documentation]   Instantiate NS for the testsuite.
+    ${id}=   Create Network Service   ${NSD_NAME}   %{VIM_TARGET}   ${NS_NAME}   ${NS_CONFIG}   ${EMPTY}
+    Set Suite Variable   ${NS_ID}   ${id}
 
 Get Management Ip Addresses
-
-    Variable Should Exist  ${ns_id}  msg=Network service instance is not available
-    ${ip}  Get Vnf Management Ip Address  ${ns_id}  ${vnf_member_index_1}
-    Set Suite Variable  ${ip_mgmt_1}  ${ip}
-    log  ${ip_mgmt_1}
-
-    ${ip}  Get Vnf Management Ip Address  ${ns_id}  ${vnf_member_index_2}
-    Set Suite Variable  ${ip_mgmt_2}  ${ip}
-    log  ${ip_mgmt_2}
-
+    [Documentation]   Get the mgmt IP addresses of both VNF of the NS.
+    Variable Should Exist   ${NS_ID}   msg=Network service instance is not available
+    ${ip}=   Get Vnf Management Ip Address   ${NS_ID}   ${VNF_MEMBER_INDEX_1}
+    Set Suite Variable   ${IP_MGMT_1}   ${ip}
+    Log   ${IP_MGMT_1}
+    ${ip}=   Get Vnf Management Ip Address   ${NS_ID}   ${VNF_MEMBER_INDEX_2}
+    Set Suite Variable   ${IP_MGMT_2}   ${ip}
+    Log   ${IP_MGMT_2}
 
 Ping from Vnf1 to Vnf2
-
-    Variable Should Exist  ${ip_mgmt_1}  msg=IP address of the data VNF '${vnf_member_index_1}' is not available
-    Variable Should Exist  ${privatekey}  msg=SSH private key not available
+    [Documentation]   Check connectivity from the first VNF to the second VNF using ping.
+    Variable Should Exist   ${IP_MGMT_1}   msg=IP address of the data VNF '${VNF_MEMBER_INDEX_1}' is not available
     Sleep   30 seconds   Wait for SSH daemon to be up
-    ${stdout}=   Execute Remote Command Check Rc Return Output   ${ip_mgmt_1}   ${username}   ${password}   ${privatekey}   ip addr ; ping -c 5 ${datanet_ip2}
-    log  ${stdout}
-
+    ${stdout}=   Execute Remote Command Check Rc Return Output   ${IP_MGMT_1}   ${USERNAME}   ${PASSWORD}   ${EMPTY}   ip addr ; ping -c 5 ${DATANET_IP2}
+    Log   ${stdout}
 
 Ping from Vnf2 to Vnf1
-
-    Variable Should Exist  ${ip_mgmt_2}  msg=IP address of the data VNF '${vnf_member_index_2}' is not available
-    Variable Should Exist  ${privatekey}  msg=SSH private key not available
-    ${stdout}=   Execute Remote Command Check Rc Return Output   ${ip_mgmt_2}   ${username}   ${password}   ${privatekey}   ip addr ; ping -c 5 ${datanet_ip1}
-    log  ${stdout}
-
+    [Documentation]   Check connectivity from the second VNF to the first VNF using ping.
+    Variable Should Exist   ${IP_MGMT_2}   msg=IP address of the data VNF '${VNF_MEMBER_INDEX_2}' is not available
+    ${stdout}=   Execute Remote Command Check Rc Return Output   ${IP_MGMT_2}   ${USERNAME}   ${PASSWORD}   ${EMPTY}   ip addr ; ping -c 5 ${DATANET_IP1}
+    Log   ${stdout}
 
 Delete NS Instance
+    [Documentation]   Delete NS instance.
     [Tags]   cleanup
-
-    Delete NS  ${ns_name}
-
+    Delete NS   ${NS_NAME}
 
 Delete NS Descriptor
+    [Documentation]   Delete NS package from OSM.
     [Tags]   cleanup
-
-    Delete NSD  ${nsd_name}
-
+    Delete NSD   ${NSD_NAME}
 
 Delete VNF Descriptor
+    [Documentation]   Delete VNF package from OSM.
     [Tags]   cleanup
-
-    Delete VNFD  ${vnfd_name}
-
+    Delete VNFD   ${VNFD_NAME}
 
 
 *** Keywords ***
 Suite Cleanup
-    [Documentation]  Test Suite Cleanup: Deleting descriptors and NS instance
-
-    Run Keyword If Any Tests Failed  Delete NS  ${ns_name}
-
-    Run Keyword If Any Tests Failed  Delete NSD  ${nsd_name}
-
-    Run Keyword If Any Tests Failed  Delete VNFD  ${vnfd_name}
-
-
+    [Documentation]   Test Suite Cleanup: Deleting descriptors and NS instance
+    Run Keyword If Any Tests Failed   Delete NS   ${NS_NAME}
+    Run Keyword If Any Tests Failed   Delete NSD   ${NSD_NAME}
+    Run Keyword If Any Tests Failed   Delete VNFD   ${VNFD_NAME}