[Documentation] Assign global variables for DevStack nodes
BuiltIn.Set Suite Variable ${OS_CNTL_IP} ${OS_CONTROL_NODE_IP}
DevstackUtils.Open Connection OS_CNTL_CONN_ID ${OS_CNTL_IP}
- BuiltIn.Run Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" DevstackUtils.Set Node Data For AllinOne Setup
- ... ELSE IF "${OS_DEPLOY}" == "1cmb-0ctl-1cmp" DevstackUtils.Set Node Data For Control And Compute Node Setup
- ... ELSE IF "${OS_DEPLOY}" == "0cmb-1ctl-2cmp" DevstackUtils.Set Node Data For Control And Two Compute Node Setup
+ BuiltIn.Run Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" DevstackUtils.Set Node Data For AllinOne Setup
+ ... ELSE IF "${OPENSTACK_TOPO}" == "1cmb-0ctl-1cmp" DevstackUtils.Set Node Data For Control And Compute Node Setup
+ ... ELSE IF "${OPENSTACK_TOPO}" == "0cmb-1ctl-2cmp" DevstackUtils.Set Node Data For Control And Two Compute Node Setup
DevstackUtils.Get DevStack Hostnames
DevstackUtils.Log Devstack Nodes Data
\ VPN Delete L3VPN vpnid=${vpn}
VNI Test Setup
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
VNI Test Teardown
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
OpenStackOperations.Get Test Teardown Debugs
*** Test Cases ***
VNI Based IPv6 Forwarding
[Documentation] verify VNI id for IPv6 Unicast frames exchanged over OVS datapaths that are on different hypervisors
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
BuiltIn.Wait Until Keyword Succeeds 60s 5s OVSDB.Verify Vni Segmentation Id and Tunnel Id @{VNI6_NET_0_PORTS}[0] @{VNI6_NET_1_PORTS}[0] @{VNI6_NETWORKS}[0]
... @{VNI6_NETWORKS}[1] @{VM_IP_NET0}[0] @{VM_IP_NET1}[0] ${IP}
VNI Based IPv6 Forwarding With BGPVPN Router Association
[Documentation] verify VNI id for IPv6 Unicast frames exchanged over OVS datapaths that are on different hypervisors
... With Router associated to a BGPVPN.
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
${net_id} = OpenStackOperations.Get Net Id @{VNI6_NETWORKS}[0]
${tenant_id} = OpenStackOperations.Get Tenant ID From Network ${net_id}
VpnOperations.VPN Create L3VPN vpnid=@{VNI6_VPN_INSTANCE_IDS}[0] name=@{VNI6_VPN_NAMES}[0] rd=@{VNI6_RDS}[0] exportrt=@{VNI6_RDS}[0] importrt=@{VNI6_RDS}[0] tenantid=${tenant_id}
VNI Based IPv6 Forwarding With Two Routers And BGPVPN With Irt Ert
[Documentation] verify VNI id for IPv6 Unicast frames exchanged over OVS datapaths that are on different hypervisors
... With Two Routers each associated to a BGPVPN and The Two BGPVPN is connected with irt and ert.
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
OpenStackOperations.Create Network @{VNI6_NETWORKS}[2]
OpenStackOperations.Create Network @{VNI6_NETWORKS}[3]
OpenStackOperations.Create SubNet @{VNI6_NETWORKS}[2] @{VNI6_SUBNETS}[2] @{VNI6_SUBNET_CIDRS}[2] ${NET2_ADDITIONAL_ARGS}
Suite Setup
[Documentation] Create Basic setup for the feature. Creates single network, subnet, two ports and two VMs.
... Create Two VMs for TC1 : (VM1, N1, Compute1) and (VM2, N2, Compute2) and R1
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
VpnOperations.Basic Suite Setup
OpenStackOperations.Create Allow All SecurityGroup ${VNI6_SECURITY_GROUP} IPv6
OpenStackOperations.Create Network @{VNI6_NETWORKS}[0]
OpenStackOperations.Get Suite Debugs
Suite Teardown
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
OpenStackOperations.OpenStack Suite Teardown
*** Test Cases ***
VNI Based L2 Switching
[Documentation] verify VNI id for L2 Unicast frames exchanged over OVS datapaths that are on different hypervisors
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
${port_mac1} = OpenStackOperations.Get Port Mac @{VNI_NET_1_PORTS}[0]
${port_mac2} = OpenStackOperations.Get Port Mac @{VNI_NET_1_PORTS}[1]
${segmentation_id} = OpenStackOperations.Get Network Segmentation Id @{VNI_NETWORKS}[0]
*** Keywords ***
Suite Setup
[Documentation] Create Basic setup for the feature. Creates single network, subnet, two ports and two VMs.
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
VpnOperations.Basic Suite Setup
OpenStackOperations.Create Allow All SecurityGroup ${VNI_SECURITY_GROUP}
OpenStackOperations.Create Network @{VNI_NETWORKS}[0]
OpenStackOperations.Get Suite Debugs
Suite Teardown
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
OpenStackOperations.OpenStack Suite Teardown
*** Test Cases ***
VNI Based L3 Forwarding
[Documentation] verify VNI id for L3 Unicast frames exchanged over OVS datapaths that are on different hypervisors
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
Wait Until Keyword Succeeds 60s 5s OVSDB.Verify Vni Segmentation Id and Tunnel Id @{VNI_NET_0_PORTS}[0] @{VNI_NET_1_PORTS}[0] @{VNI_NETWORKS}[0]
... @{VNI_NETWORKS}[1] @{NET_0_VM_IPS}[0] @{NET_1_VM_IPS}[0] ${IP}
VNI Based L3 Forwarding With BGPVPN Router Association
[Documentation] verify VNI id for L3 Unicast frames exchanged over OVS datapaths that are on different hypervisors
... With Router associated to a BGPVPN.
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
${net_id} = OpenStackOperations.Get Net Id @{VNI_NETWORKS}[0]
${tenant_id} = OpenStackOperations.Get Tenant ID From Network ${net_id}
VpnOperations.VPN Create L3VPN vpnid=@{VNI_VPN_INSTANCE_IDS}[0] name=@{VNI_VPN_NAMES}[0] rd=@{VNI_RDS}[0] exportrt=@{VNI_RDS}[0] importrt=@{VNI_RDS}[0] tenantid=${tenant_id}
VNI Based L3 Forwarding With BGPVPN Network Association
[Documentation] verify VNI id for L3 Unicast frames exchanged over OVS datapaths that are on different hypervisors
... With Networks associated to a BGPVPN.
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
OpenStackOperations.Create Network @{VNI_NETWORKS}[2]
OpenStackOperations.Create Network @{VNI_NETWORKS}[3]
OpenStackOperations.Create SubNet @{VNI_NETWORKS}[2] @{VNI_SUBNETS}[2] @{VNI_SUBNET_CIDRS}[2]
VNI Based L3 Forwarding With BGPVPN With Irt Ert
[Documentation] verify VNI id for L3 Unicast frames exchanged over OVS datapaths that are on different hypervisors
... With two Networks associated to two BGPVPN.
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
OpenStackOperations.Create Network @{VNI_NETWORKS}[4]
OpenStackOperations.Create Network @{VNI_NETWORKS}[5]
OpenStackOperations.Create SubNet @{VNI_NETWORKS}[4] @{VNI_SUBNETS}[4] @{VNI_SUBNET_CIDRS}[4]
Suite Setup
[Documentation] Create Basic setup for the feature. Creates single network, subnet, two ports and two VMs.
... Create Two VMs for TC1 : (VM1, N1, Compute1) and (VM2, N2, Compute2) and R1
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
VpnOperations.Basic Suite Setup
OpenStackOperations.Create Allow All SecurityGroup ${VNI_SECURITY_GROUP}
OpenStackOperations.Create Network @{VNI_NETWORKS}[0]
OpenStackOperations.Get Suite Debugs
Suite Teardown
- BuiltIn.Return From Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp"
+ BuiltIn.Return From Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp"
OpenStackOperations.OpenStack Suite Teardown
Verify GARP Requests
[Documentation] Verify that GARP request are sent to controller
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
BuiltIn.Set Test Variable ${fib_entry_1} @{NET_1_VM_IPS}[0]
BuiltIn.Set Test Variable ${fib_entry_3} @{NET_1_VM_IPS}[1]
Verify Flows Are Present On All Compute Nodes
Verify MIP Migration
[Documentation] Verify that after migration of movable ip across compute nodes, the controller updates the routes
- BuiltIn.Pass Execution If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
+ BuiltIn.Pass Execution If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" "Test is not supported for combo node"
${unconfig_extra_route_ip1} = BuiltIn.Catenate sudo ifconfig ${SUB_IF} down
${output} = OpenStackOperations.Execute Command on VM Instance @{NETWORKS}[0] @{NET_1_VM_IPS}[1] ${unconfig_extra_route_ip1}
${output} = OpenStackOperations.Execute Command on VM Instance @{NETWORKS}[0] @{NET_1_VM_IPS}[1] ifconfig
: FOR ${vm} IN @{vm_list}
\ BuiltIn.Wait Until Keyword Succeeds 6x 20s OpenStackOperations.Check If Migration Is Complete ${vm}
${vm_host_after_migration} = OpenStackOperations.Get Hypervisor Host Of Vm @{NET_1_VMS}[0]
- BuiltIn.Run Keyword If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" BuiltIn.Should Match ${vm_host_after_migration} ${vm_host_before_migration}
+ BuiltIn.Run Keyword If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" BuiltIn.Should Match ${vm_host_after_migration} ${vm_host_before_migration}
... ELSE BuiltIn.Should Not Match ${vm_host_after_migration} ${vm_host_before_migration}
SSHLibrary.Switch Connection ${devstack_conn_id}
RemoteBash.Write_Bare_Ctrl_C
${bcast_egress} = Utils.Run Command On Remote System And Log ${OS_COMPUTE_IP} ${DUMP_FLOW} | grep table=${EGRESS_ACL_TABLE} | grep ${BCAST_IP}
${get_pkt_count_after_bcast} = OvsManager.Get Packet Count In Table For IP ${OS_COMPUTE_IP} ${EGRESS_ACL_TABLE} ${BCAST_IP}
${pkt_diff} = Evaluate int(${get_pkt_count_after_bcast})-int(${get_pkt_count_before_bcast})
- ${pkt_diff_expected} = BuiltIn.Set Variable If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" ${PACKET_DIFF_CMB} ${PACKET_DIFF}
- ${pkt_count} = BuiltIn.Set Variable If "${OS_DEPLOY}" == "1cmb-0ctl-0cmp" ${PACKET_COUNT_CMB} ${PACKET_COUNT}
+ ${pkt_diff_expected} = BuiltIn.Set Variable If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" ${PACKET_DIFF_CMB} ${PACKET_DIFF}
+ ${pkt_count} = BuiltIn.Set Variable If "${OPENSTACK_TOPO}" == "1cmb-0ctl-0cmp" ${PACKET_COUNT_CMB} ${PACKET_COUNT}
BuiltIn.Run Keyword If '${subnet_var}' == 'same' Should Be Equal As Numbers ${pkt_diff} ${pkt_count}
... ELSE Should Be True ${pkt_diff} == ${pkt_diff_expected}