[VOL-4267] Minor modifications to voltha comp restart scenarios while continuous ping in background for DT,
also marked the same TCs to notready till ping in background issue is resolved for lxc containers.
Additionally, deleted Voltha_failureScenarios2 unused robot file.
Change-Id: I6b42d8a8fad505fcd4c12eb02a83d9fab03ba2fe
diff --git a/tests/dt-workflow/Voltha_DT_FailureScenarios.robot b/tests/dt-workflow/Voltha_DT_FailureScenarios.robot
index 6020929..5233544 100755
--- a/tests/dt-workflow/Voltha_DT_FailureScenarios.robot
+++ b/tests/dt-workflow/Voltha_DT_FailureScenarios.robot
@@ -562,7 +562,7 @@
[Documentation] Restart openonu-adapter container after VOLTHA is operational.
... Run the ping continuously in background during container restart,
... and verify that there should be no affect on the dataplane.
- [Tags] functionalDt RestartOpenOnuPingDt non-critical
+ [Tags] functionalDt RestartOpenOnuPingDt non-critical notready
[Setup] Start Logging RestartOpenOnuPingDt
[Teardown] Run Keywords Run Keyword If ${logging} Collect Logs
... AND Stop Logging RestartOpenOnuPingDt
@@ -595,11 +595,15 @@
FOR ${I} IN RANGE 0 ${num_all_onus}
${src}= Set Variable ${hosts.src[${I}]}
${dst}= Set Variable ${hosts.dst[${I}]}
- ${ping_output_file}= Set Variable /tmp/${src['onu']}_ping
Run Keyword If ${has_dataplane} Run Keyword And Continue On Failure
... Wait Until Keyword Succeeds 60s 2s
... Stop Ping Running In Background ${src['ip']} ${src['user']} ${src['pass']}
... ${src['container_type']} ${src['container_name']}
+ END
+ FOR ${I} IN RANGE 0 ${num_all_onus}
+ ${src}= Set Variable ${hosts.src[${I}]}
+ ${dst}= Set Variable ${hosts.dst[${I}]}
+ ${ping_output_file}= Set Variable /tmp/${src['onu']}_ping
${ping_output}= Run Keyword If ${has_dataplane} Run Keyword And Continue On Failure
... Wait Until Keyword Succeeds 60s 2s
... Retrieve Remote File Contents ${ping_output_file} ${src['ip']} ${src['user']} ${src['pass']}
@@ -611,7 +615,7 @@
[Documentation] Restart openolt-adapter container after VOLTHA is operational.
... Run the ping continuously in background during container restart,
... and verify that there should be no affect on the dataplane.
- [Tags] functionalDt RestartOpenOltPingDt non-critical
+ [Tags] functionalDt RestartOpenOltPingDt non-critical notready
[Setup] Start Logging RestartOpenOltPingDt
[Teardown] Run Keywords Run Keyword If ${logging} Collect Logs
... AND Stop Logging RestartOpenOltPingDt
@@ -644,11 +648,15 @@
FOR ${I} IN RANGE 0 ${num_all_onus}
${src}= Set Variable ${hosts.src[${I}]}
${dst}= Set Variable ${hosts.dst[${I}]}
- ${ping_output_file}= Set Variable /tmp/${src['onu']}_ping
Run Keyword If ${has_dataplane} Run Keyword And Continue On Failure
... Wait Until Keyword Succeeds 60s 2s
... Stop Ping Running In Background ${src['ip']} ${src['user']} ${src['pass']}
... ${src['container_type']} ${src['container_name']}
+ END
+ FOR ${I} IN RANGE 0 ${num_all_onus}
+ ${src}= Set Variable ${hosts.src[${I}]}
+ ${dst}= Set Variable ${hosts.dst[${I}]}
+ ${ping_output_file}= Set Variable /tmp/${src['onu']}_ping
${ping_output}= Run Keyword If ${has_dataplane} Run Keyword And Continue On Failure
... Wait Until Keyword Succeeds 60s 2s
... Retrieve Remote File Contents ${ping_output_file} ${src['ip']} ${src['user']} ${src['pass']}
diff --git a/tests/functional/Voltha_FailureScenarios2.robot b/tests/functional/Voltha_FailureScenarios2.robot
deleted file mode 100755
index 7070ff2..0000000
--- a/tests/functional/Voltha_FailureScenarios2.robot
+++ /dev/null
@@ -1,166 +0,0 @@
-# Copyright 2017 - present Open Networking Foundation
-#
-# 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
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-*** Settings ***
-Documentation Test various failure scenarios
-Suite Setup Setup Suite
-Test Setup Setup
-Test Teardown Teardown
-Suite Teardown Teardown Suite
-Library Collections
-Library String
-Library OperatingSystem
-Library XML
-Library RequestsLibrary
-Library ../../libraries/DependencyLibrary.py
-Resource ../../libraries/onos.robot
-Resource ../../libraries/voltctl.robot
-Resource ../../libraries/voltha.robot
-Resource ../../libraries/utils.robot
-Resource ../../libraries/k8s.robot
-Resource ../../variables/variables.robot
-Resource ../../libraries/power_switch.robot
-
-*** Variables ***
-${POD_NAME} flex-ocp-cord
-${KUBERNETES_CONF} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.conf
-${KUBERNETES_CONFIGS_DIR} ~/pod-configs/kubernetes-configs
-#${KUBERNETES_CONFIGS_DIR} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.conf
-${KUBERNETES_YAML} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.yml
-${HELM_CHARTS_DIR} ~/helm-charts
-${VOLTHA_POD_NUM} 8
-${NAMESPACE} voltha
-${DEFAULTSPACE} default
-# For below variable value, using deployment name as using grep for
-# parsing radius pod name, we can also use full radius pod name
-${RESTART_POD_NAME} radius
-${timeout} 60s
-${of_id} 0
-${logical_id} 0
-${has_dataplane} True
-${teardown_device} False
-${scripts} ../../scripts
-
-# Per-test logging on failure is turned off by default; set this variable to enable
-${container_log_dir} ${None}
-
-# logging flag to enable Collect Logs, can be passed via the command line too
-# example: -v logging:False
-${logging} True
-
-*** Test Cases ***
-Verify OLT Soft Reboot
- [Documentation] Test soft reboot of the OLT using voltctl command
- [Tags] VOL-2745 OLTSoftReboot functional
- [Setup] Start Logging OLTSoftReboot
- [Teardown] Run Keywords Collect Logs
- ... AND Stop Logging OLTSoftReboot
- Delete All Devices and Verify
- Setup
- ## Performing Sanity Test to make sure subscribers are all AUTH+DHCP and pingable
- Run Keyword If ${has_dataplane} Clean Up Linux
- Wait Until Keyword Succeeds ${timeout} 2s Perform Sanity Test
- # Reboot the OLT using "voltctl device reboot" command
- Reboot Device ${olt_device_id}
- # Wait for the OLT to actually go down
- Wait Until Keyword Succeeds 360s 5s Validate OLT Device ENABLED UNKNOWN UNREACHABLE
- ... ${olt_serial_number}
- #Verify that ping fails
- FOR ${I} IN RANGE 0 ${num_onus}
- ${src}= Set Variable ${hosts.src[${I}]}
- ${dst}= Set Variable ${hosts.dst[${I}]}
- Run Keyword If ${has_dataplane} Run Keyword And Continue On Failure
- ... Wait Until Keyword Succeeds 60s 2s
- ... Check Ping False ${dst['dp_iface_ip_qinq']} ${src['dp_iface_name']}
- ... ${src['ip']} ${src['user']} ${src['pass']} ${src['container_type']} ${src['container_name']}
- END
- Run Keyword If ${has_dataplane} Wait Until Keyword Succeeds 120s 10s
- ... Check Remote System Reachability True ${olt_ssh_ip}
- # Waiting extra time for the ONUs to come up
- # Check OLT states
- Wait Until Keyword Succeeds 360s 5s Validate OLT Device ENABLED ACTIVE REACHABLE
- ... ${olt_serial_number}
- #Check after reboot that ONUs are active, authenticated/DHCP/pingable
- Run Keyword If ${has_dataplane} Clean Up Linux
- Wait Until Keyword Succeeds ${timeout} 2s Perform Sanity Test
-
-Verify restart ofagent container before subscriber is provisioned
- [Documentation] Restart ofagent container before subscriber is provisioned.
- [Tags] functional VOL-2962 ofagentRestart
- [Setup] Start Logging ofagentRestart
- [Teardown] Run Keywords Collect Logs
- ... AND Stop Logging ofagentRestart
- ... AND Scale K8s Deployment ${NAMESPACE} voltha-ofagent 1
- setup
- Run Keyword If ${has_dataplane} Clean Up Linux
- ${of_id}= Wait Until Keyword Succeeds ${timeout} 15s Validate OLT Device in ONOS ${olt_serial_number}
- Set Global Variable ${of_id}
- FOR ${I} IN RANGE 0 ${num_onus}
- ${src}= Set Variable ${hosts.src[${I}]}
- ${dst}= Set Variable ${hosts.dst[${I}]}
- ${onu_device_id}= Get Device ID From SN ${src['onu']}
- ${onu_port}= Wait Until Keyword Succeeds ${timeout} 2s Get ONU Port in ONOS ${src['onu']}
- ... ${of_id}
- # Bring up the device and verify it authenticates
- Wait Until Keyword Succeeds ${timeout} 5s Validate Device ENABLED ACTIVE REACHABLE
- ... ${onu_device_id} onu=True onu_reason=omci-flows-pushed by_dev_id=True
- Wait Until Keyword Succeeds ${timeout} 2s Verify Eapol Flows Added For ONU ${ONOS_SSH_IP}
- ... ${ONOS_SSH_PORT} ${of_id} ${onu_port}
- ${wpa_log}= Run Keyword If ${has_dataplane} Catenate SEPARATOR=.
- ... /tmp/wpa ${src['dp_iface_name']} log
- Run Keyword If ${has_dataplane} Run Keyword And Continue On Failure Validate Authentication True
- ... ${src['dp_iface_name']} wpa_supplicant.conf ${src['ip']} ${src['user']} ${src['pass']}
- ... ${src['container_type']} ${src['container_name']} ${wpa_log}
- Wait Until Keyword Succeeds ${timeout} 2s Verify ONU in AAA-Users ${ONOS_SSH_IP}
- ... ${ONOS_SSH_PORT} ${onu_port}
- END
- # Restart POD ofagent
- ${waitforRestart} Set Variable 120s
- ${podStatusOutput}= Run kubectl get pods -n ${NAMESPACE}
- Log ${podStatusOutput}
- ${countBforRestart}= Run kubectl get pods -n ${NAMESPACE} | grep Running | wc -l
- ${podName} Set Variable ofagent
- Restart Pod ${NAMESPACE} ${podName}
- Sleep 60s
- Wait Until Keyword Succeeds ${waitforRestart} 2s Validate Pod Status ofagent ${NAMESPACE}
- ... Running
- FOR ${I} IN RANGE 0 ${num_onus}
- # Add subscriber access and verify that DHCP completes to ensure system is still functioning properly
- #Wait Until Keyword Succeeds ${timeout} 2s Execute ONOS CLI Command use single connection ${ONOS_SSH_IP}
- #... ${ONOS_SSH_PORT} volt-add-subscriber-access ${of_id} ${onu_port}
- ${src}= Set Variable ${hosts.src[${I}]}
- ${dst}= Set Variable ${hosts.dst[${I}]}
- ${onu_device_id}= Get Device ID From SN ${src['onu']}
- ${onu_port}= Run Keyword And Continue On Failure Wait Until Keyword Succeeds ${timeout} 2s
- ... Get ONU Port in ONOS ${src['onu']} ${of_id}
- # Add subscriber access and verify that DHCP completes to ensure system is still functioning properly
- Wait Until Keyword Succeeds ${timeout} 2s Execute ONOS CLI Command use single connection ${ONOS_SSH_IP}
- ... ${ONOS_SSH_PORT} volt-add-subscriber-access ${of_id} ${onu_port}
- # Verify DHCP-Allocations
- Run Keyword And Continue On Failure Wait Until Keyword Succeeds ${timeout} 2s
- ... Validate Subscriber DHCP Allocation ${ONOS_SSH_IP} ${ONOS_SSH_PORT} ${onu_port}
- # Verify Ping
- Run Keyword If ${has_dataplane} Run Keyword And Continue On Failure Check Ping True
- ... ${dst['dp_iface_ip_qinq']} ${src['dp_iface_name']} ${src['ip']}
- ... ${src['user']} ${src['pass']} ${src['container_type']} ${src['container_name']}
- END
-
-*** Keywords ***
-Setup Suite
- [Documentation] Set up the test suite
- Common Test Suite Setup
-
-Teardown Suite
- [Documentation] Clean up ONOS SSH connections
- Close All ONOS SSH Connections