blob: 508d11f419c0998bd3402af20b3309c802482a21 [file] [log] [blame]
beierlm107d16a2020-05-15 21:47:43 -04001# Licensed under the Apache License, Version 2.0 (the "License");
2# you may not use this file except in compliance with the License.
3# You may obtain a copy of the License at
4#
5# http://www.apache.org/licenses/LICENSE-2.0
6#
7# Unless required by applicable law or agreed to in writing, software
8# distributed under the License is distributed on an "AS IS" BASIS,
9# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10# See the License for the specific language governing permissions and
11# limitations under the License.
12
13*** Settings ***
14Library OperatingSystem
15Library String
16Library Collections
17Library Process
18Library SSHLibrary
19
20Resource %{ROBOT_DEVOPS_FOLDER}/lib/vnfd_lib.robot
21Resource %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot
22Resource %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot
23Resource %{ROBOT_DEVOPS_FOLDER}/lib/connectivity_lib.robot
24Resource %{ROBOT_DEVOPS_FOLDER}/lib/ssh_lib.robot
25
26Variables %{ROBOT_DEVOPS_FOLDER}/resources/hackfest_multivdu_ns_data.py
27
28Suite Teardown Run Keyword And Ignore Error Test Cleanup
29
30
31*** Variables ***
32${ns_id} ${EMPTY}
33${username} osm
34${password} osm4u
35${vnf_member_index} 1
36${vnf_ip_addr} ${EMPTY}
37${ns_config} {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
38# ${ns_config} ${EMPTY}
39
40*** Test Cases ***
41Create Hackfest multivdu VNF Descriptor
42 [Tags] hackfest_multivdu
43
44 Create VNFD '%{PACKAGES_FOLDER}/${vnfd_pkg}'
45
46
47Create Hackfest Multivdu NS Descriptor
48 [Tags] hackfest_multivdu
49
50 Create NSD '%{PACKAGES_FOLDER}/${nsd_pkg}'
51
52Network Service Instance Test
53 [Tags] hackfest_multivdu
54
55 ${status} ${message}= Run Keyword And Ignore Error Variable Should Exist ${publickey}
56 Run Keyword If "${status}" == "FAIL" Set Global Variable ${publickey} ${EMPTY}
57 ${id}= Create Network Service ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey}
58 Set Suite Variable ${ns_id} ${id}
59
60
61Get Vnf Ip Address
62 [Tags] hackfest_multivdu
63
64 ${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
65 log ${ip_addr}
66 Set Suite Variable ${vnf_ip_addr} ${ip_addr}
67
68Test Ping
69 [Tags] hackfest_multivdu
70 Test Connectivity ${vnf_ip_addr}
71
72Test SSH Access
73 [Tags] hackfest_multivdu
74 Sleep 30s Waiting ssh daemon to be up
75 ${status} ${message}= Run Keyword And Ignore Error Variable Should Exist ${privatekey}
76 Run Keyword If "${status}" == "FAIL" Set Global Variable ${privatekey} ${EMPTY}
77 Test SSH Connection ${vnf_ip_addr} ${username} ${password} ${privatekey}
78
79Delete NS Instance Test
80 [Tags] hackfest_multivdu cleanup
81
82 Delete NS ${ns_name}
83
84
85Delete NS Descriptor Test
86 [Tags] hackfest_multivdu cleanup
87
88 Delete NSD ${nsd_name}
89
90
91Delete VNF Descriptor Test
92 [Tags] hackfest_multivdu cleanup
93
94 Delete VNFD ${vnfd_name}
95
96
97*** Keywords ***
98Test Cleanup
99 [Documentation] Test Suit Cleanup: Deleting Descriptor, instance and vim
100
101 Run Keyword If Test Failed Delete NS ${ns_name}
102
103 Run Keyword If Test Failed Delete NSD ${nsd_name}
104
105 Run Keyword If Test Failed Delete VNFD ${vnfd_name}