Should Contain ${output} active
Poll VM Is ACTIVE
- [Arguments] ${vm_name} ${retry}=600s ${retry_interval}=5s
+ [Arguments] ${vm_name} ${retry}=600s ${retry_interval}=30s
[Documentation] Run these commands to check whether the created vm instance is active or not.
Wait Until Keyword Succeeds ${retry} ${retry_interval} Verify VM Is ACTIVE ${vm_name}
[Documentation] Verify Flow Table and Datapath
${SRCMAC_CN1} = Create List ${VM_MACAddr_ELAN1[0]}
${SRCMAC_CN2} = Create List ${VM_MACAddr_ELAN1[1]}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${VM_MACAddr_ELAN1}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_2_IP} ${SRCMAC_CN2} ${VM_MACAddr_ELAN1}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${VM_MACAddr_ELAN1}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_2_IP} ${SRCMAC_CN2} ${VM_MACAddr_ELAN1}
Log Verify Datapath Test
${output} = Execute Command on VM Instance @{NETWORKS}[0] ${VM_IP_ELAN1[0]} ping -c 3 ${VM_IP_ELAN1[1]}
Should Contain ${output} ${PING_PASS}
Log Delete VM and verify flows updated
Delete Vm Instance ${VM_INSTANCES_ELAN1[0]}
${SRCMAC_CN1} = Create List ${VM_MACAddr_ELAN1[0]}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Removed For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Removed For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1}
Remove RSA Key From KnowHosts ${VM_IP_ELAN1[0]}
Log ReCreate VM and verify flow updated
Create Vm Instance With Port On Compute Node ${ELAN1_PORT_LIST[0]} ${VM_INSTANCES_ELAN1[0]} ${OS_COMPUTE_1_IP}
Poll VM Is ACTIVE ${VM_INSTANCES_ELAN1[0]}
- ${VM_IP_ELAN1} ${DHCP_IP_ELAN1} Wait Until Keyword Succeeds 180s 10s Collect VM IP Addresses true
+ ${VM_IP_ELAN1} ${DHCP_IP_ELAN1} Wait Until Keyword Succeeds 180s 30s Collect VM IP Addresses true
... @{VM_INSTANCES_ELAN1}
Log ${VM_IP_ELAN1}
Set Suite Variable ${VM_IP_ELAN1}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${VM_MACAddr_ELAN1}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${VM_MACAddr_ELAN1}
${output} = Execute Command on VM Instance @{NETWORKS}[0] ${VM_IP_ELAN1[0]} ping -c 3 ${VM_IP_ELAN1[1]}
Should Contain ${output} ${PING_PASS}
${output} = Execute Command on VM Instance @{NETWORKS}[0] ${VM_IP_ELAN1[1]} ping -c 3 ${VM_IP_ELAN1[0]}
Log Delete VM instances
: FOR ${VmInstance} IN @{VM_INSTANCES_ELAN1}
\ Delete Vm Instance ${VmInstance}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Removed For ELAN Service ${OS_COMPUTE_1_IP} ${VM_MACAddr_ELAN1}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Removed For ELAN Service ${OS_COMPUTE_2_IP} ${VM_MACAddr_ELAN1}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Removed For ELAN Service ${OS_COMPUTE_1_IP} ${VM_MACAddr_ELAN1}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Removed For ELAN Service ${OS_COMPUTE_2_IP} ${VM_MACAddr_ELAN1}
Verify Datapath for Multiple ELAN with Multiple DPN
[Documentation] Verify Flow Table and Data path for Multiple ELAN with Multiple DPN
${SRCMAC_CN1} = Create List ${VM_MACAddr_ELAN2[0]} ${VM_MACAddr_ELAN3[0]}
${SRCMAC_CN2} = Create List ${VM_MACAddr_ELAN2[1]} ${VM_MACAddr_ELAN3[1]}
${MAC_LIST} = Create List @{VM_MACAddr_ELAN2} @{VM_MACAddr_ELAN3}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${MAC_LIST}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_2_IP} ${SRCMAC_CN2} ${MAC_LIST}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${MAC_LIST}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_2_IP} ${SRCMAC_CN2} ${MAC_LIST}
${output} = Execute Command on VM Instance @{NETWORKS}[1] ${VM_IP_ELAN2[0]} ping -c 3 ${VM_IP_ELAN2[1]}
Should Contain ${output} ${PING_PASS}
${output} = Execute Command on VM Instance @{NETWORKS}[2] ${VM_IP_ELAN3[1]} ping -c 3 ${VM_IP_ELAN3[0]}
# collected immediately after when that step fails, as is the nature of robot test cases.
Reboot Nova VM ${VM_INSTANCES_ELAN2[0]}
Poll VM Is ACTIVE ${VM_INSTANCES_ELAN2[0]}
- ${VM_IP_ELAN2} ${DHCP_IP_ELAN2} Wait Until Keyword Succeeds 180s 10s Collect VM IP Addresses true
+ ${VM_IP_ELAN2} ${DHCP_IP_ELAN2} Wait Until Keyword Succeeds 180s 30s Collect VM IP Addresses true
... @{VM_INSTANCES_ELAN2}
Log ${VM_IP_ELAN2}
Should Not Contain ${VM_IP_ELAN2} None
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${MAC_LIST}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For ELAN Service ${OS_COMPUTE_1_IP} ${SRCMAC_CN1} ${MAC_LIST}
${output} = Execute Command on VM Instance @{NETWORKS}[1] ${VM_IP_ELAN2[1]} ping -c 3 ${VM_IP_ELAN2[0]}
Should Contain ${output} ${PING_PASS}
[Teardown] Run Keywords Get Test Teardown Debugs
: FOR ${VM} IN @{VM_INSTANCES_ELAN1}
\ Poll VM Is ACTIVE ${VM}
Log Get IP address for ELAN1
- Wait Until Keyword Succeeds 180s 10s Collect VM IP Addresses true @{VM_INSTANCES_ELAN1}
+ Wait Until Keyword Succeeds 180s 30s Collect VM IP Addresses true @{VM_INSTANCES_ELAN1}
${VM_IP_ELAN1} ${DHCP_IP_ELAN1} Collect VM IP Addresses false @{VM_INSTANCES_ELAN1}
Log ${VM_IP_ELAN1}
Set Suite Variable ${VM_IP_ELAN1}
${VM_INSTANCES} = Create List @{VM_INSTANCES_ELAN2} @{VM_INSTANCES_ELAN3}
: FOR ${VM} IN @{VM_INSTANCES}
\ Poll VM Is ACTIVE ${VM}
- ${VM_IP_ELAN2} ${DHCP_IP_ELAN2} Wait Until Keyword Succeeds 180s 10s Collect VM IP Addresses true
+ ${VM_IP_ELAN2} ${DHCP_IP_ELAN2} Wait Until Keyword Succeeds 180s 30s Collect VM IP Addresses true
... @{VM_INSTANCES_ELAN2}
Log ${VM_IP_ELAN2}
Set Suite Variable ${VM_IP_ELAN2}
- ${VM_IP_ELAN3} ${DHCP_IP_ELAN3} Wait Until Keyword Succeeds 180s 10s Collect VM IP Addresses true
+ ${VM_IP_ELAN3} ${DHCP_IP_ELAN3} Wait Until Keyword Succeeds 180s 30s Collect VM IP Addresses true
... @{VM_INSTANCES_ELAN3}
Log ${VM_IP_ELAN3}
Set Suite Variable ${VM_IP_ELAN3}
[Documentation] Check if the netvirt piece has been loaded into the karaf instance
[Tags] Check netvirt is loaded
${netvirt}= Create Dictionary netvirt:1=1
- Wait Until Keyword Succeeds 6s 1s ClusterManagement.Check_Item_Occurrence_Member_List_Or_All uri=${OPERATIONAL_NODES_NETVIRT} dictionary=${netvirt}
+ Wait Until Keyword Succeeds 6s 2s ClusterManagement.Check_Item_Occurrence_Member_List_Or_All uri=${OPERATIONAL_NODES_NETVIRT} dictionary=${netvirt}
Check External Net for Tenant
[Documentation] Check External Net for Tenant
Check Operational topology
[Documentation] Check Operational topology
${dictionary}= Create Dictionary ovsdb://uuid/=5
- Wait Until Keyword Succeeds 20s 2s ClusterManagement.Check_Item_Occurrence_Member_List_Or_All uri=${OPERATIONAL_TOPO_API} dictionary=${dictionary}
+ Wait Until Keyword Succeeds 20s 5s ClusterManagement.Check_Item_Occurrence_Member_List_Or_All uri=${OPERATIONAL_TOPO_API} dictionary=${dictionary}
Get bridge setup
[Documentation] This request is verifying that the br-int bridge has been created
: FOR ${VM} IN @{VM_INSTANCES}
\ Poll VM Is ACTIVE ${VM}
Wait Until Keyword Succeeds 30s 10s Wait For Routes To Propogate ${NETWORKS} ${SUBNETS_CIDR}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{VM_INSTANCES_NET10}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{VM_INSTANCES_NET20}
${VM_IP_NET10} ${DHCP_IP1} Collect VM IP Addresses false @{VM_INSTANCES_NET10}
${VM_IP_NET20} ${DHCP_IP2} Collect VM IP Addresses false @{VM_INSTANCES_NET20}
${cn2_conn_id} = Start Packet Capture on Node ${OS_COMPUTE_2_IP} file_Name=tcpDumpCN2
${os_conn_id} = Start Packet Capture on Node ${OS_CONTROL_NODE_IP} file_Name=tcpDumpOS
${vm_instances} = Create List @{VM_IP_NET10} @{VM_IP_NET20}
- Wait Until Keyword Succeeds 30s 5s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${vm_instances}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_2_IP} ${vm_instances}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP}
+ Wait Until Keyword Succeeds 30s 10s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For L3VPN ${OS_COMPUTE_2_IP} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP}
${dst_ip_list} = Create List ${VM_IP_NET10[1]} @{VM_IP_NET20}
Test Operations From Vm Instance ${NETWORKS[0]} ${VM_IP_NET10[0]} ${dst_ip_list}
${dst_ip_list} = Create List ${VM_IP_NET20[1]} @{VM_IP_NET10}
Update Router @{ROUTERS}[0] ${cmd}
Show Router @{ROUTERS}[0] -D
${vm_instances} = Create List @{EXTRA_NW_SUBNET}
- Wait Until Keyword Succeeds 30s 5s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
${output} = Execute Command on VM Instance @{NETWORKS}[0] ${VM_IP_NET10[1]} ping -c 3 @{EXTRA_NW_IP}[1]
Should Contain ${output} 64 bytes
${output} = Execute Command on VM Instance @{NETWORKS}[1] ${VM_IP_NET20[1]} ping -c 3 @{EXTRA_NW_IP}[1]
Verify L3VPN Datapath With Router Association
[Documentation] Datapath test across the networks using L3VPN with router association.
${vm_instances} = Create List @{VM_IP_NET10} @{VM_IP_NET20}
- Wait Until Keyword Succeeds 30s 5s Check For Elements At URI ${VPN_IFACES_URL} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Check For Elements At URI ${VPN_IFACES_URL} ${vm_instances}
${RD} = Strip String ${RDS[0]} characters="[]
- Wait Until Keyword Succeeds 60s 5s Check For Elements At URI ${CONFIG_API}/odl-fib:fibEntries/vrfTables/${RD}/ ${vm_instances}
- Wait Until Keyword Succeeds 60s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${vm_instances}
- Wait Until Keyword Succeeds 60s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_2_IP} ${vm_instances}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP}
+ Wait Until Keyword Succeeds 60s 15s Check For Elements At URI ${CONFIG_API}/odl-fib:fibEntries/vrfTables/${RD}/ ${vm_instances}
+ Wait Until Keyword Succeeds 60s 15s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${vm_instances}
+ Wait Until Keyword Succeeds 60s 15s Verify Flows Are Present For L3VPN ${OS_COMPUTE_2_IP} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 15s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
+ Wait Until Keyword Succeeds 30s 15s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 30s 15s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP}
Log Check datapath from network1 to network2
${dst_ip_list} = Create List @{VM_IP_NET10}[1] @{VM_IP_NET20}
Test Operations From Vm Instance ${NETWORKS[0]} @{VM_IP_NET10}[0] ${dst_ip_list}
Wait Until Keyword Succeeds 3s 1s Check For Elements Not At URI ${ROUTER_URL} ${router_list}
${resp}= VPN Get L3VPN vpnid=${VPN_INSTANCE_ID[0]}
Should Not Contain ${resp} ${router_id}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_1_IP}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_2_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_2_IP}
Delete Router With NonExistentRouter Name
[Documentation] Delete router with nonExistentRouter name
Verify BGP Neighbor Status
[Documentation] Verify BGP status established
- ${output} = Wait Until Keyword Succeeds 60s 10s Verify BGP Neighbor Status On Quagga ${DCGW_SYSTEM_IP} ${ODL_SYSTEM_IP}
+ ${output} = Wait Until Keyword Succeeds 60s 15s Verify BGP Neighbor Status On Quagga ${DCGW_SYSTEM_IP} ${ODL_SYSTEM_IP}
Log ${output}
${output1} = Execute Show Command On Quagga ${DCGW_SYSTEM_IP} show ip bgp vrf ${DCGW_RD}
Log ${output1}
Verify Routes Exchange Between ODL And DCGW
[Documentation] Verify routes exchange between ODL and DCGW
${fib_values} = Create List ${LOOPBACK_IP} @{VM_IPS}
- Wait Until Keyword Succeeds 60s 5s Check For Elements At URI ${CONFIG_API}/odl-fib:fibEntries/vrfTables/${DCGW_RD}/ ${fib_values}
- Wait Until Keyword Succeeds 60s 5s Verify Routes On Quagga ${DCGW_SYSTEM_IP} ${DCGW_RD} ${fib_values}
+ Wait Until Keyword Succeeds 60s 15s Check For Elements At URI ${CONFIG_API}/odl-fib:fibEntries/vrfTables/${DCGW_RD}/ ${fib_values}
+ Wait Until Keyword Succeeds 60s 15s Verify Routes On Quagga ${DCGW_SYSTEM_IP} ${DCGW_RD} ${fib_values}
[Teardown] Run Keywords Report_Failure_Due_To_Bug 7607
... AND Get Test Teardown Debugs
\ Poll VM Is ACTIVE ${VM}
Wait Until Keyword Succeeds 30s 10s Wait For Routes To Propogate ${NETWORKS} ${SUBNETS_CIDR}
${prefix_net10}= Replace String ${SUBNETS_CIDR[0]} ::/64 (:[a-f0-9]{,4}){,4}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 5x 60s Collect VM IPv6 SLAAC Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 3x 60s Collect VM IPv6 SLAAC Addresses
... true ${prefix_net10} @{VM_INSTANCES_NET10}
${prefix_net20}= Replace String ${SUBNETS_CIDR[1]} ::/64 (:[a-f0-9]{,4}){,4}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 5x 60s Collect VM IPv6 SLAAC Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 3x 60s Collect VM IPv6 SLAAC Addresses
... true ${prefix_net20} @{VM_INSTANCES_NET20}
${VM_IP_NET10}= Collect VM IPv6 SLAAC Addresses false ${prefix_net10} @{VM_INSTANCES_NET10}
${VM_IP_NET20}= Collect VM IPv6 SLAAC Addresses false ${prefix_net20} @{VM_INSTANCES_NET20}
${cn2_conn_id} = Start Packet Capture on Node ${OS_COMPUTE_2_IP} file_Name=tcpDumpCN2
${os_conn_id} = Start Packet Capture on Node ${OS_CONTROL_NODE_IP} file_Name=tcpDumpOS
${vm_instances} = Create List @{VM_IP_NET10} @{VM_IP_NET20}
- Wait Until Keyword Succeeds 30s 5s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${VM_IP_NET10}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${VM_IP_NET20}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP} ipv6
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP} ipv6
+ Wait Until Keyword Succeeds 30s 10s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${VM_IP_NET10}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${VM_IP_NET20}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP}
${dst_ip_list} = Create List ${VM_IP_NET10[1]} @{VM_IP_NET20}
Test Operations From Vm Instance ${NETWORKS[0]} ${VM_IP_NET10[0]} ${dst_ip_list}
${dst_ip_list} = Create List ${VM_IP_NET20[1]} @{VM_IP_NET10}
Update Router @{ROUTERS}[0] ${cmd}
Show Router @{ROUTERS}[0] -D
${vm_instances} = Create List @{EXTRA_NW_SUBNET}
- Wait Until Keyword Succeeds 30s 5s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Check For Elements At URI ${FIB_ENTRY_URL} ${vm_instances}
${output} = Execute Command on VM Instance @{NETWORKS}[0] ${VM_IP_NET10[1]} ping6 -c 3 @{EXTRA_NW_IP}[1]
Should Contain ${output} 64 bytes
${output} = Execute Command on VM Instance @{NETWORKS}[1] ${VM_IP_NET20[1]} ping6 -c 3 @{EXTRA_NW_IP}[1]
[Documentation] Datapath test across the networks using L3VPN with router association.
Log Verify VPN interfaces, FIB entries and Flow table
${vm_instances} = Create List @{VM_IP_NET10} @{VM_IP_NET20}
- Wait Until Keyword Succeeds 30s 5s Check For Elements At URI ${VPN_IFACES_URL} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Check For Elements At URI ${VPN_IFACES_URL} ${vm_instances}
${RD} = Strip String ${RDS[0]} characters="[]
- Wait Until Keyword Succeeds 60s 5s Check For Elements At URI ${CONFIG_API}/odl-fib:fibEntries/vrfTables/${RD}/ ${vm_instances}
- Wait Until Keyword Succeeds 60s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${vm_instances}
- Wait Until Keyword Succeeds 60s 5s Verify Flows Are Present For L3VPN ${OS_COMPUTE_2_IP} ${vm_instances}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP}
+ Wait Until Keyword Succeeds 60s 15s Check For Elements At URI ${CONFIG_API}/odl-fib:fibEntries/vrfTables/${RD}/ ${vm_instances}
+ Wait Until Keyword Succeeds 60s 15s Verify Flows Are Present For L3VPN ${OS_COMPUTE_1_IP} ${vm_instances}
+ Wait Until Keyword Succeeds 60s 15s Verify Flows Are Present For L3VPN ${OS_COMPUTE_2_IP} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Entry On ODL ${GWMAC_ADDRS}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry On Flow Table ${OS_COMPUTE_2_IP}
Log Check datapath from network1 to network2
${dst_ip_list} = Create List @{VM_IP_NET10}[1] @{VM_IP_NET20}
Test Operations From Vm Instance ${NETWORKS[0]} @{VM_IP_NET10}[0] ${dst_ip_list}
Wait Until Keyword Succeeds 3s 1s Check For Elements Not At URI ${ROUTER_URL} ${router_list}
${resp}= VPN Get L3VPN vpnid=${VPN_INSTANCE_ID[0]}
Should Not Contain ${resp} ${router_id}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_1_IP}
- Wait Until Keyword Succeeds 30s 5s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_2_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify GWMAC Flow Entry Removed From Flow Table ${OS_COMPUTE_2_IP}
Delete Router With NonExistentRouter Name
[Documentation] Delete router with nonExistentRouter name
Should Not Contain ${VM_IP_NET2} None
Should Not Contain ${VM_IP_NET3} None
${vm_instances} = Create List @{VM_IP_NET1} @{VM_IP_NET2} @{VM_IP_NET3}
- Wait Until Keyword Succeeds 30s 5s Check For Elements At URI ${FIB_ENTRIES_URL} ${vm_instances}
+ Wait Until Keyword Succeeds 30s 10s Check For Elements At URI ${FIB_ENTRIES_URL} ${vm_instances}
Verify Ping On Same Networks
Verify Ping On Different Networks
[Documentation] Verify that GARP request are sent to controller
Set Suite Variable ${FIB_ENTRY_1} ${VM_IP_NET1[0]}
Set Suite Variable ${FIB_ENTRY_3} ${VM_IP_NET1[1]}
- Wait Until Keyword Succeeds 10s 1s Verify Flows Are Present ${OS_COMPUTE_1_IP}
- Wait Until Keyword Succeeds 10s 1s Verify Flows Are Present ${OS_COMPUTE_2_IP}
+ Wait Until Keyword Succeeds 10s 2s Verify Flows Are Present ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 10s 2s Verify Flows Are Present ${OS_COMPUTE_2_IP}
${output}= Get Fib Entries session
${resp}= Should Match Regexp ${output} destPrefix\\":\\"${FIB_ENTRY_3}\/32".*"${OS_COMPUTE_2_IP}\\"
${resp}= Should Match Regexp ${output} destPrefix\\":\\"${FIB_ENTRY_1}\/32".*"${OS_COMPUTE_1_IP}\\"
${rx_packet0_after} = Execute Command on VM Instance @{NETWORKS}[0] ${VM_IP_NET1[0]} ifconfig eth0
Should Not Be Equal ${rx_packet0_before} ${rx_packet0_after}
Should Not Be Equal ${rx_packet1_before} ${rx_packet1_after}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present ${OS_COMPUTE_1_IP}
- Wait Until Keyword Succeeds 30s 5s Verify Flows Are Present ${OS_COMPUTE_2_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present ${OS_COMPUTE_1_IP}
+ Wait Until Keyword Succeeds 30s 10s Verify Flows Are Present ${OS_COMPUTE_2_IP}
Wait Until Keyword Succeeds 5s 1s Verify Learnt IP ${FIB_ENTRY_2} session
${output}= Get Fib Entries session
${resp}= Should Match Regexp ${output} destPrefix\\":\\"${FIB_ENTRY_3}\\/32".*"${OS_COMPUTE_2_IP}\\"
# for dhcp addresses
: FOR ${vm} IN @{NET_1_VM_INSTANCES} @{NET_2_VM_INSTANCES}
\ Poll VM Is ACTIVE ${vm}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{NET_1_VM_INSTANCES}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{NET_2_VM_INSTANCES}
${NET1_VM_IPS} ${NET1_DHCP_IP} Collect VM IP Addresses false @{NET_1_VM_INSTANCES}
${NET2_VM_IPS} ${NET2_DHCP_IP} Collect VM IP Addresses false @{NET_2_VM_INSTANCES}
# for dhcp addresses
: FOR ${vm} IN @{NET_1_VM_INSTANCES} @{NET_2_VM_INSTANCES} @{NET_3_VM_INSTANCES}
\ Poll VM Is ACTIVE ${vm}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{NET_1_VM_INSTANCES}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{NET_2_VM_INSTANCES}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{NET_3_VM_INSTANCES}
${NET3_L3_VM_IPS} ${NET3_DHCP_IP} Collect VM IP Addresses false @{NET_3_VM_INSTANCES}
${NET2_L3_VM_IPS} ${NET2_DHCP_IP} Collect VM IP Addresses false @{NET_2_VM_INSTANCES}
# for dhcp addresses
: FOR ${vm} IN @{VM_INSTANCES_FLOATING} @{VM_INSTANCES_SNAT}
\ Poll VM Is ACTIVE ${vm}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{VM_INSTANCES_FLOATING}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{VM_INSTANCES_SNAT}
${FLOATING_VM_IPS} ${FLOATING_DHCP_IP} Collect VM IP Addresses false @{VM_INSTANCES_FLOATING}
${SNAT_VM_IPS} ${SNAT_DHCP_IP} Collect VM IP Addresses false @{VM_INSTANCES_SNAT}
# for dhcp addresses
: FOR ${vm} IN @{NET_1_VM_INSTANCES}
\ OpenStackOperations.Poll VM Is ACTIVE ${vm}
- ${status} ${message} BuiltIn.Run Keyword And Ignore Error BuiltIn.Wait Until Keyword Succeeds 60s 5s OpenStackOperations.Collect VM IP Addresses
+ ${status} ${message} BuiltIn.Run Keyword And Ignore Error BuiltIn.Wait Until Keyword Succeeds 60s 15s OpenStackOperations.Collect VM IP Addresses
... true @{NET_1_VM_INSTANCES}
${NET1_VM_IPS} ${NET1_DHCP_IP} OpenStackOperations.Collect VM IP Addresses false @{NET_1_VM_INSTANCES}
${NET2_VM_IPS} ${NET2_DHCP_IP} OpenStackOperations.Collect VM IP Addresses false @{NET_2_VM_INSTANCES}
# for dhcp addresses
: FOR ${vm} IN @{VM_INSTANCES}
\ Poll VM Is ACTIVE ${vm}
- ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 5s Collect VM IP Addresses
+ ${status} ${message} Run Keyword And Ignore Error Wait Until Keyword Succeeds 60s 15s Collect VM IP Addresses
... true @{VM_INSTANCES}
${NET1_VM_IPS} ${NET1_DHCP_IP} Collect VM IP Addresses false @{VM_INSTANCES}
${VM_INSTANCES}= Collections.Combine Lists ${VM_INSTANCES}