Moving robot-systests deprecated to tests
[osm/tests.git] / robot-systest / deprecated / lib / cli / vim_account_lib.robot
1 # -*- coding: utf-8 -*-
2
3 ##
4 # Copyright 2019 Tech Mahindra Limited
5 #
6 # All Rights Reserved.
7 #
8 # Licensed under the Apache License, Version 2.0 (the "License"); you may
9 # not use this file except in compliance with the License. You may obtain
10 # a copy of the License at
11 #
12 #         http://www.apache.org/licenses/LICENSE-2.0
13 #
14 # Unless required by applicable law or agreed to in writing, software
15 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
16 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
17 # License for the specific language governing permissions and limitations
18 # under the License.
19 ##
20
21 ## Change log:
22 # 1. Feature 7829: Jayant Madavi, Mrityunjay Yadav : MY00514913@techmahindra.com : 06-sep-2019
23 ##
24
25 *** Settings ***
26 Library     OperatingSystem
27 Library     String
28 Library     Collections
29 Library     ../custom_lib.py
30
31
32 *** Variables ***
33 ${success_return_code}    0
34 ${user}     "robottest"
35 ${password}     "fred"
36 ${authurl}      "https://127.0.0.1/"
37 ${type}     "openstack"
38 ${desc}     "a test vim"
39 ${tenant}   "robottest2"
40
41
42 *** Keywords ***
43 Create Vim Account
44     [Documentation]   Create a new vim account
45
46     ${vim-name}=     Generate Random String  8  [NUMBERS]
47     ${vim-name}=     Catenate  SEPARATOR=  vim_  ${vim-name}
48     set global variable  ${vim-name}
49
50     ${rc}   ${stdout}=      Run and Return RC and Output            osm vim-create --name ${vim-name} --user ${user} --password ${password} --auth_url ${authurl} --tenant ${tenant} --account_type ${type} --description ${desc}
51     log  ${stdout}
52     Should Be Equal As Integers         ${rc}    ${success_return_code}
53
54
55 Get Vim List
56     [Documentation]  Get a vim account list
57
58     ${rc}   ${stdout}=      Run and Return RC and Output            osm vim-list
59     log     ${stdout}
60     Log To Console  ${stdout}
61     Should Be Equal As Integers         ${rc}    ${success_return_code}
62
63
64 Delete Vim Account
65     [Documentation]  delete vim account details
66     [Arguments]  ${vim_name}=${vim-name}
67
68     ${rc}   ${stdout}=      Run and Return RC and Output            osm vim-delete ${vim_name}
69     log  ${stdout}
70     Should Be Equal As Integers         ${rc}    ${success_return_code}
71
72
73 VIM Setup To Launch Network Services
74     [Documentation]  Setup a VIM to launch network services
75
76     set global variable    @{vim}
77     ${vmware_url}=  Get Environment Variable    VCD_AUTH_URL   ${EMPTY}
78     ${openstack_url}=   Get Environment Variable    OS_AUTH_URL   ${EMPTY}
79     ${vmware_vim}=    Run Keyword And Return If   '${vmware_url}'!='${EMPTY}'   Setup Vmware Vim   ${vmware_url}   'vmware'      'pytest system test'
80     ${openstack_vim}=    Run Keyword And Return If   '${openstack_url}'!='${EMPTY}'   Setup Openstack Vim    ${openstack_url}    'openstack'   'pytest system test'
81     Should Not Be Empty    ${vim}    VIM details not provided
82     Log Many   @{vim}
83
84
85 Setup Openstack Vim
86     [Documentation]  Openstack Vim Account Setup
87     [Tags]    vim-setup
88     [Arguments]  ${authurl}  ${type}     ${desc}
89
90     ${user}=  Get Environment Variable    OS_USERNAME   ''
91     ${password}=  Get Environment Variable    OS_PASSWORD   ''
92     ${tenant}=  Get Environment Variable    OS_PROJECT_NAME   ''
93     ${vim-config}=  Get Environment Variable    OS_VIM_CONFIG   ''
94     ${vim_name}=    GENERATE NAME
95
96     ${rc}   ${stdout}=      Run and Return RC and Output            osm vim-create --name ${vim_name} --user ${user} --password ${password} --auth_url ${authurl} --tenant ${tenant} --account_type ${type} --description ${desc} --config ${vim-config}
97     log  ${stdout}
98     Should Be Equal As Integers    ${rc}    ${success_return_code}
99     Sleep    30s    Wait for to get vim ready
100     ${rc}   ${vim_detail}=      Run and Return RC and Output    osm vim-show ${vim_name}
101     Should Contain    ${vim_detail}    "operationalState": "ENABLED"    msg=Openstack vim is not available    values=False
102     Append To List     ${vim}       ${stdout}
103
104     [Return]  ${stdout}
105
106
107 Setup Vmware Vim
108     [Documentation]  Vmware Vim Account Setup
109     [Tags]    vim-setup
110     [Arguments]  ${authurl}  ${type}     ${desc}
111
112     ${user}=  Get Environment Variable    VCD_USERNAME   ''
113     ${password}=  Get Environment Variable    VCD_PASSWORD   ''
114     ${tenant}=  Get Environment Variable    VCD_TENANT_NAME   ''
115     ${vcd-org}=  Get Environment Variable    VCD_ORGANIZATION   ''
116     ${vim-config}=  Get Environment Variable    VCD_VIM_CONFIG   ''
117     ${vim_name}=    GENERATE NAME
118
119     ${rc}   ${stdout}=      Run and Return RC and Output            osm vim-create --name ${vim_name} --user ${user} --password ${password} --auth_url ${authurl} --tenant ${tenant} --account_type ${type} --description ${desc} --config ${vim-config}
120     log  ${stdout}
121     Should Be Equal As Integers    ${rc}    ${success_return_code}
122     Sleep    30s    Wait for to get vim ready
123     ${rc}   ${vim_detail}=      Run and Return RC and Output    osm vim-show ${vim_name}
124     Should Contain    ${vim_detail}    "operationalState": "ENABLED"    msg=VMWare VCD vim is not available    values=False
125     Append To List     ${vim}       ${stdout}
126
127     [Return]  ${stdout}
128
129
130 Force Delete Vim Account
131     [Documentation]  delete vim account details
132     [Arguments]  ${vim_name}
133
134     ${rc}   ${stdout}=      Run and Return RC and Output            osm vim-delete ${vim_name}
135     log  ${stdout}
136     Should Be Equal As Integers         ${rc}    ${success_return_code}