Update Robot Framework format - step 13
[integration/test.git] / csit / suites / openstack / connectivity / live_migration.robot
index 9e9af8f065482d47d2b8d45b4e6cf788866f1a7b..ed9b5feb8fc42a4b71771e4b7b99329882b21a3d 100644 (file)
@@ -1,90 +1,81 @@
 *** Settings ***
-Documentation     Test suite to verify live Migaration of VM instance also verify the connectivity
-...               of VM instance while Migrating the instance,
-Suite Setup       LiveMigration.Live Migration Suite Setup
-Suite Teardown    LiveMigration.Live Migration Suite Teardown
-Test Setup        SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
-Test Teardown     OpenStackOperations.Get Test Teardown Debugs
-Library           OperatingSystem
-Library           RequestsLibrary
-Library           SSHLibrary
-Resource          ../../../libraries/DevstackUtils.robot
-Resource          ../../../libraries/KarafKeywords.robot
-Resource          ../../../libraries/LiveMigration.robot
-Resource          ../../../libraries/OpenStackOperations.robot
-Resource          ../../../libraries/RemoteBash.robot
-Resource          ../../../libraries/SetupUtils.robot
-Resource          ../../../libraries/Utils.robot
+Documentation       Test suite to verify live Migaration of VM instance also verify the connectivity
+...                 of VM instance while Migrating the instance,
 
-*** Variables ***
-${SECURITY_GROUP}    migration_sg
-@{NETWORKS}       migration_net_1
-@{SUBNETS}        migration_sub_1
-@{NET_1_VMS}      migration_net_1_vm_1    migration_net_1_vm_2
-@{SUBNETS_RANGE}    130.0.0.0/24
+Library             OperatingSystem
+Library             RequestsLibrary
+Library             SSHLibrary
+Resource            ../../../libraries/DevstackUtils.robot
+Resource            ../../../libraries/KarafKeywords.robot
+Resource            ../../../libraries/LiveMigration.robot
+Resource            ../../../libraries/OpenStackOperations.robot
+Resource            ../../../libraries/RemoteBash.robot
+Resource            ../../../libraries/SetupUtils.robot
+Resource            ../../../libraries/Utils.robot
 
-*** Test Cases ***
-Create VXLAN Network migration_net_1
-    [Documentation]    Create Network with neutron request.
-    OpenstackOperations.Create Network    @{NETWORKS}[0]
+Suite Setup         Suite Setup
+Suite Teardown      LiveMigration.Live Migration Suite Teardown
+Test Setup          SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
+Test Teardown       OpenStackOperations.Get Test Teardown Debugs
 
-Create Subnets For migration_net_1
-    [Documentation]    Create Sub Nets for the Networks with neutron request.
-    OpenStackOperations.Create SubNet    @{NETWORKS}[0]    @{SUBNETS}[0]    @{SUBNETS_RANGE}[0]
 
-Add Ssh Allow Rule
-    [Documentation]    Allow all TCP/UDP/ICMP packets for this suite
-    OpenStackOperations.Create Allow All SecurityGroup    ${SECURITY_GROUP}
-
-Create Vm Instances For migration_net_1
-    [Documentation]    Create Four Vm instances using flavor and image names for a network.
-    OpenStackOperations.Create Vm Instance On Compute Node    @{NETWORKS}[0]    @{NET_1_VMS}[0]    ${OS_CMP1_HOSTNAME}    sg=${SECURITY_GROUP}
-    OpenStackOperations.Create Vm Instance On Compute Node    @{NETWORKS}[0]    @{NET_1_VMS}[1]    ${OS_CMP2_HOSTNAME}    sg=${SECURITY_GROUP}
+*** Variables ***
+${SECURITY_GROUP}       migration_sg
+@{NETWORKS}             migration_net_1
+@{SUBNETS}              migration_sub_1
+@{NET_1_VMS}            migration_net_1_vm_1    migration_net_1_vm_2
+@{SUBNETS_RANGE}        130.0.0.0/24
 
-Check Vm Instances Have Ip Address
-    @{NET_1_VM_IPS}    ${NET_1_DHCP_IP} =    OpenStackOperations.Get VM IPs    @{NET_1_VMS}
-    BuiltIn.Set Suite Variable    @{NET_1_VM_IPS}
-    BuiltIn.Should Not Contain    ${NET_1_VM_IPS}    None
-    BuiltIn.Should Not Contain    ${NET_1_DHCP_IP}    None
-    [Teardown]    BuiltIn.Run Keywords    OpenStackOperations.Show Debugs    @{NET_1_VMS}
-    ...    AND    OpenStackOperations.Get Test Teardown Debugs
 
+*** Test Cases ***
 Migrate Instance And Verify Connectivity While Migration And After
     [Documentation]    migrate the server to different host.
     ...    and check the connectivity during Migration
     ...    with a ping test from DHCP NS.
-    ${net_id} =    OpenStackOperations.Get Net Id    @{NETWORKS}[0]
+    ${net_id} =    OpenStackOperations.Get Net Id    ${NETWORKS}[0]
     ${devstack_conn_id} =    OpenStackOperations.Get ControlNode Connection
     SSHLibrary.Switch Connection    ${devstack_conn_id}
-    ${output} =    SSHLibrary.Write    sudo ip netns exec qdhcp-${net_id} ping @{NET1_VM_IPS}[0]
-    ${vm_host_before_migration} =    OpenStackOperations.Get Hypervisor Host Of Vm    @{NET_1_VMS}[0]
-    OpenStackOperations.Server Live Migrate    @{NET_1_VMS}[0]
-    ${vm_list} =    BuiltIn.Create List    @{NET_1_VMS}[0]
-    : 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.Should Not Match    ${vm_host_after_migration}    ${vm_host_before_migration}
+    ${output} =    SSHLibrary.Write    sudo ip netns exec qdhcp-${net_id} ping ${NET1_VM_IPS}[0]
+    ${vm_host_before_migration} =    OpenStackOperations.Get Hypervisor Host Of Vm    ${NET_1_VMS}[0]
+    OpenStackOperations.Server Live Migrate    ${NET_1_VMS}[0]
+    ${vm_list} =    BuiltIn.Create List    ${NET_1_VMS}[0]
+    FOR    ${vm}    IN    @{vm_list}
+        BuiltIn.Wait Until Keyword Succeeds    6x    20s    OpenStackOperations.Check If Migration Is Complete    ${vm}
+    END
+    ${vm_host_after_migration} =    OpenStackOperations.Get Hypervisor Host Of Vm    ${NET_1_VMS}[0]
+    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}
+    END
     SSHLibrary.Switch Connection    ${devstack_conn_id}
     RemoteBash.Write_Bare_Ctrl_C
     ${output} =    SSHLibrary.Read Until    packet loss
     BuiltIn.Should Contain    ${output}    64 bytes
-    ${output} =    DevstackUtils.Write Commands Until Prompt    sudo ip netns exec qdhcp-${net_id} ping -c 10 @{NET1_VM_IPS}[0]
+    ${output} =    DevstackUtils.Write Commands Until Prompt
+    ...    sudo ip netns exec qdhcp-${net_id} ping -c 10 ${NET1_VM_IPS}[0]
     BuiltIn.Should Contain    ${output}    64 bytes
 
-Delete Vm Instances In migration_net_1
-    [Documentation]    Delete Vm instances using instance names in network_1.
-    : FOR    ${vm}    IN    @{NET_1_VMS}
-    \    OpenStackOperations.Delete Vm Instance    ${vm}
-
-Delete Sub Networks In migration_net_1
-    [Documentation]    Delete Sub Nets for the Networks with neutron request.
-    OpenStackOperations.Delete SubNet    @{SUBNETS}[0]
 
-Delete Networks
-    [Documentation]    Delete Networks with neutron request.
-    : FOR    ${NetworkElement}    IN    @{NETWORKS}
-    \    OpenStackOperations.Delete Network    ${NetworkElement}
-
-Delete SecurityGroup
-    [Documentation]    Delete SecurityGroup with neutron request.
-    OpenStackOperations.Delete SecurityGroup    ${SECURITY_GROUP}
+*** Keywords ***
+Suite Setup
+    LiveMigration.Live Migration Suite Setup
+    OpenstackOperations.Create Network    ${NETWORKS}[0]
+    OpenStackOperations.Create SubNet    ${NETWORKS}[0]    ${SUBNETS}[0]    ${SUBNETS_RANGE}[0]
+    OpenStackOperations.Create Allow All SecurityGroup    ${SECURITY_GROUP}
+    OpenStackOperations.Create Vm Instance On Compute Node
+    ...    ${NETWORKS}[0]
+    ...    ${NET_1_VMS}[0]
+    ...    ${OS_CMP1_HOSTNAME}
+    ...    sg=${SECURITY_GROUP}
+    OpenStackOperations.Create Vm Instance On Compute Node
+    ...    ${NETWORKS}[0]
+    ...    ${NET_1_VMS}[1]
+    ...    ${OS_CMP2_HOSTNAME}
+    ...    sg=${SECURITY_GROUP}
+    @{NET_1_VM_IPS}    ${NET_1_DHCP_IP} =    OpenStackOperations.Get VM IPs    @{NET_1_VMS}
+    BuiltIn.Set Suite Variable    @{NET_1_VM_IPS}
+    BuiltIn.Should Not Contain    ${NET_1_VM_IPS}    None
+    BuiltIn.Should Not Contain    ${NET_1_DHCP_IP}    None
+    OpenStackOperations.Show Debugs    @{NET_1_VMS}
+    OpenStackOperations.Get Suite Debugs