2 Documentation Test suite to verify packet flows between vm instances.
5 Library OperatingSystem
6 Library RequestsLibrary
7 Resource ../../../libraries/DevstackUtils.robot
8 Resource ../../../libraries/DataModels.robot
9 Resource ../../../libraries/OpenStackOperations.robot
10 Resource ../../../libraries/SetupUtils.robot
11 Resource ../../../libraries/Utils.robot
12 Resource ../../../libraries/KarafKeywords.robot
14 Suite Setup Suite Setup
15 Suite Teardown OpenStackOperations.OpenStack Suite Teardown
16 Test Setup SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
17 Test Teardown OpenStackOperations.Get Test Teardown Debugs
21 ${SECURITY_GROUP} l2_sg
22 @{NETWORKS} l2_net_1 l2_net_2
23 @{SUBNETS} l2_sub_1 l2_sub_2
24 @{NET_1_VMS} l2_net_1_vm_1 l2_net_1_vm_2 l2_net_1_vm_3
25 @{NET_2_VMS} l2_net_2_vm_1 l2_net_2_vm_2 l2_net_2_vm_3
26 @{SUBNET_CIDRS} 21.0.0.0/24 22.0.0.0/24
31 Ping Vm Instances In net_1
32 [Documentation] Check reachability of vm instances by pinging to them.
33 OpenStackOperations.Ping Vm From DHCP Namespace ${NETWORKS}[0] ${NET_1_VM_IPS}[0]
34 OpenStackOperations.Ping Vm From DHCP Namespace ${NETWORKS}[0] ${NET_1_VM_IPS}[1]
35 OpenStackOperations.Ping Vm From DHCP Namespace ${NETWORKS}[0] ${NET_1_VM_IPS}[2]
37 Ping Vm Instances In net_2
38 [Documentation] Check reachability of vm instances by pinging to them.
39 OpenStackOperations.Ping Vm From DHCP Namespace ${NETWORKS}[1] ${NET_2_VM_IPS}[0]
40 OpenStackOperations.Ping Vm From DHCP Namespace ${NETWORKS}[1] ${NET_2_VM_IPS}[1]
41 OpenStackOperations.Ping Vm From DHCP Namespace ${NETWORKS}[1] ${NET_2_VM_IPS}[2]
43 Connectivity Tests From Vm Instances In net_1
44 [Documentation] Login to the vm instance and test some operations
45 OpenStackOperations.Test Operations From Vm Instance ${NETWORKS}[0] ${NET_1_VM_IPS}[0] ${NET_1_VM_IPS}
46 OpenStackOperations.Test Operations From Vm Instance ${NETWORKS}[0] ${NET_1_VM_IPS}[1] ${NET_1_VM_IPS}
47 OpenStackOperations.Test Operations From Vm Instance ${NETWORKS}[0] ${NET_1_VM_IPS}[2] ${NET_1_VM_IPS}
49 Connectivity Tests From Vm Instances In net_2
50 [Documentation] Login to the vm instance and test operations
51 OpenStackOperations.Test Operations From Vm Instance ${NETWORKS}[1] ${NET_2_VM_IPS}[0] ${NET_2_VM_IPS}
52 OpenStackOperations.Test Operations From Vm Instance ${NETWORKS}[1] ${NET_2_VM_IPS}[1] ${NET_2_VM_IPS}
53 OpenStackOperations.Test Operations From Vm Instance ${NETWORKS}[1] ${NET_2_VM_IPS}[2] ${NET_2_VM_IPS}
56 [Documentation] Delete Vm instances using instance names.
58 OpenStackOperations.Delete Vm Instance ${NET_1_VMS}[0]
60 No Ping For Deleted Vm
61 [Documentation] Check non reachability of deleted vm instances by pinging to them.
63 OpenStackOperations.Ping From DHCP Should Not Succeed ${NETWORKS}[0] ${NET_1_VM_IPS}[0]
65 Recreate The Deleted Vm Instance and check ping & connectivity.
66 [Documentation] Check reachability of recreated vm instances by pinging to them.
68 OpenStackOperations.Create Vm Instance On Compute Node
71 ... ${OS_CMP1_HOSTNAME}
72 ... sg=${SECURITY_GROUP}
73 @{NET_1_VM_IPS} ${NET_1_DHCP_IP} = OpenStackOperations.Get VM IPs @{NET_1_VMS}
74 OpenStackOperations.Ping Vm From DHCP Namespace ${NETWORKS}[0] ${NET_1_VM_IPS}[0]
75 OpenStackOperations.Test Operations From Vm Instance ${NETWORKS}[0] ${NET_1_VM_IPS}[0] ${NET_1_VM_IPS}
80 OpenStackOperations.OpenStack Suite Setup
81 OpenStackOperations.Create Network
83 ... --provider-network-type vlan --provider-physical-network ${PUBLIC_PHYSICAL_NETWORK} --provider-segment ${NET_1_VLAN_ID}
84 OpenStackOperations.Create SubNet ${NETWORKS}[0] ${SUBNETS}[0] ${SUBNET_CIDRS}[0]
85 OpenStackOperations.Create Network ${NETWORKS}[1]
86 OpenStackOperations.Create SubNet ${NETWORKS}[1] ${SUBNETS}[1] ${SUBNET_CIDRS}[1]
87 OpenStackOperations.Create Allow All SecurityGroup ${SECURITY_GROUP}
88 OpenStackOperations.Create Vm Instance On Compute Node
91 ... ${OS_CMP1_HOSTNAME}
92 ... sg=${SECURITY_GROUP}
93 OpenStackOperations.Create Vm Instance On Compute Node
96 ... ${OS_CMP1_HOSTNAME}
97 ... sg=${SECURITY_GROUP}
98 OpenStackOperations.Create Vm Instance On Compute Node
101 ... ${OS_CMP2_HOSTNAME}
102 ... sg=${SECURITY_GROUP}
103 OpenStackOperations.Create Vm Instance On Compute Node
106 ... ${OS_CMP1_HOSTNAME}
107 ... sg=${SECURITY_GROUP}
108 OpenStackOperations.Create Vm Instance On Compute Node
111 ... ${OS_CMP2_HOSTNAME}
112 ... sg=${SECURITY_GROUP}
113 OpenStackOperations.Create Vm Instance On Compute Node
116 ... ${OS_CMP2_HOSTNAME}
117 ... sg=${SECURITY_GROUP}
118 @{NET_1_VM_IPS} ${NET_1_DHCP_IP} = OpenStackOperations.Get VM IPs @{NET_1_VMS}
119 @{NET_2_VM_IPS} ${NET_2_DHCP_IP} = OpenStackOperations.Get VM IPs @{NET_2_VMS}
120 BuiltIn.Set Suite Variable @{NET_1_VM_IPS}
121 BuiltIn.Set Suite Variable @{NET_2_VM_IPS}
122 BuiltIn.Should Not Contain ${NET_1_VM_IPS} None
123 BuiltIn.Should Not Contain ${NET_2_VM_IPS} None
124 BuiltIn.Should Not Contain ${NET_1_DHCP_IP} None
125 BuiltIn.Should Not Contain ${NET_2_DHCP_IP} None
126 OpenStackOperations.Show Debugs @{NET_1_VMS} @{NET_2_VMS}
127 OpenStackOperations.Get Suite Debugs