blob: fff6975a583c9ddf2d0664f3f1e3d01652a3f936 [file] [log] [blame]
romeromonser4edf7332020-04-02 15:54:38 +02001# 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_cloudinit_ns_data.py
27
28Suite Teardown Run Keyword And Ignore Error Test Cleanup
29
30
31*** Variables ***
32${ns_id} ${EMPTY}
33${username} ubuntu
34${password} ${EMPTY}
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 Cloudinit VNF Descriptor
42 [Tags] hackfest_cloudinit
43
44 Create VNFD '%{PACKAGES_FOLDER}/${vnfd_pkg}'
45
46
47Create Hackfest Cloudinit NS Descriptor
48 [Tags] hackfest_cloudinit
49
50 Create NSD '%{PACKAGES_FOLDER}/${nsd_pkg}'
51
52
53Network Service Instance Test
54 [Tags] hackfest_cloudinit
55
56 ${id}= Create Network Service ${nsd_name} %{VIM_TARGET} ${ns_name} ${ns_config} ${publickey}
57 Set Suite Variable ${ns_id} ${id}
58
59
60Get Vnf Ip Address
61 [Tags] hackfest_cloudinit
62
63 ${ip_addr} Get Vnf Management Ip Address ${ns_id} ${vnf_member_index}
64 log ${ip_addr}
65 Set Suite Variable ${vnf_ip_addr} ${ip_addr}
66
67
68Test SSH Access
69 [Tags] hackfest_cloudinit
70
71 Sleep 30s Waiting ssh daemon to be up
72 Test SSH Connection ${vnf_ip_addr} ${username} ${password} ${privatekey}
73
74
75Check Remote File Injected Via Cloud-init
76 [Tags] hackfest_cloudinit
77
78 ${stdout}= Execute Remote Command Check Rc Return Output ${vnf_ip_addr} ${username} ${password} ${privatekey} sudo cat /root/helloworld.txt
79 log ${stdout}
80
81
82Delete NS Instance Test
83 [Tags] hackfest_cloudinit cleanup
84
85 Delete NS ${ns_name}
86
87
88Delete NS Descriptor Test
89 [Tags] hackfest_cloudinit cleanup
90
91 Delete NSD ${nsd_name}
92
93
94Delete VNF Descriptor Test
95 [Tags] hackfest_cloudinit cleanup
96
97 Delete VNFD ${vnfd_name}
98
99
100*** Keywords ***
101Test Cleanup
102 [Documentation] Test Suit Cleanup: Deleting Descriptor, instance and vim
103
104 Run Keyword If Test Failed Delete NS ${ns_name}
105
106 Run Keyword If Test Failed Delete NSD ${nsd_name}
107
108 Run Keyword If Test Failed Delete VNFD ${vnfd_name}
109
110