blob: ab1a238fdf39d356c308b5d2a120b4dd93b7a496 [file] [log] [blame]
Gayathri.Selvan283a63c2020-01-23 04:09:18 +00001# Copyright 2017 - present Open Networking Foundation
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14# FIXME Can we use the same test against BBSim and Hardware?
15
16*** Settings ***
17Documentation Test various end-to-end scenarios
18Suite Setup Common Test Suite Setup
19Test Setup Setup
20Test Teardown Teardown
21#Suite Teardown Teardown Suite
22Library Collections
23Library String
24Library OperatingSystem
25Library XML
26Library RequestsLibrary
27Library ../../libraries/DependencyLibrary.py
28Resource ../../libraries/onos.robot
29Resource ../../libraries/voltctl.robot
30Resource ../../libraries/voltha.robot
31Resource ../../libraries/utils.robot
32Resource ../../libraries/k8s.robot
33Resource ../../variables/variables.robot
34
35*** Variables ***
36${POD_NAME} flex-ocp-cord
37${KUBERNETES_CONF} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.conf
38${KUBERNETES_CONFIGS_DIR} ~/pod-configs/kubernetes-configs
39#${KUBERNETES_CONFIGS_DIR} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.conf
40${KUBERNETES_YAML} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.yml
41${HELM_CHARTS_DIR} ~/helm-charts
42${VOLTHA_POD_NUM} 8
43${NAMESPACE} voltha
44# For below variable value, using deployment name as using grep for
45# parsing radius pod name, we can also use full radius pod name
46${RESTART_POD_NAME} radius
47${timeout} 60s
48${of_id} 0
49${logical_id} 0
Suchitra Vemuri109feb12020-01-23 16:25:02 -080050${has_dataplane} True
Gayathri.Selvan283a63c2020-01-23 04:09:18 +000051${external_libs} True
52${teardown_device} False
53${scripts} ../../scripts
54
55*** Test Cases ***
Gayathri.Selvanb6a2b542020-01-24 07:24:23 +000056Verify restart ofagent container after VOLTHA is operational
57 [Documentation] Restart ofagent container after VOLTHA is operational.
58 ... Please note this test case should be run before the restart of other containers.
59 ... Prerequisite : ONUs are authenticated and pingable.
60 [Tags] functional VOL-2409 RestartPods notready
61 [Setup] NONE
62 [Teardown] NONE
63 ${waitforRestart} Set Variable 120s
64 ${podStatusOutput}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE}
65 Log ${podStatusOutput}
66 ${countBforRestart}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE} | grep Running | wc -l
67 Restart Pod ${NAMESPACE} ofagent
68 Sleep 60s
69 Wait Until Keyword Succeeds ${waitforRestart} 2s Validate Pod Status ofagent ${NAMESPACE}
70 ... Running
71 Repeat Sanity Test
72 ${podStatusOutput}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE}
73 Log ${podStatusOutput}
74 ${countAfterRestart}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE} | grep Running | wc -l
75 Should Be Equal As Strings ${countAfterRestart} ${countBforRestart}
76 Run Keyword and Ignore Error Collect Logs
77
Gayathri.Selvan283a63c2020-01-23 04:09:18 +000078Verify restart any container after VOLTHA is operational
79 [Documentation] Restart any container after VOLTHA is operational.
80 ... Prerequisite : ONUs are authenticated and pingable.
Suchitra Vemuri109feb12020-01-23 16:25:02 -080081 [Tags] functional VOL-1958 RestartPods
Gayathri.Selvan283a63c2020-01-23 04:09:18 +000082 [Setup] NONE
83 [Teardown] NONE
84 ${waitforRestart} Set Variable 120s
85 ${podStatusOutput}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE}
86 Log ${podStatusOutput}
87 ${countBforRestart}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE} | grep Running | wc -l
88 ${podName} Set Variable adapter-open-olt
89 Restart Pod ${NAMESPACE} ${podName}
90 Wait Until Keyword Succeeds ${waitforRestart} 2s Validate Pod Status ${podName} ${NAMESPACE}
91 ... Running
92 Repeat Sanity Test
93 ${podStatusOutput}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE}
94 Log ${podStatusOutput}
95 ${countAfterRestart}= Run ${KUBECTL_CONFIG};kubectl get pods -n ${NAMESPACE} | grep Running | wc -l
96 Should Be Equal As Strings ${countAfterRestart} ${countBforRestart}
97 Log to console Pod ${podName} restarted and sanity checks passed successfully
Gayathri.Selvanb6a2b542020-01-24 07:24:23 +000098