blob: bbf717a2a1830234358f17966139a6cb1d7423cd [file] [log] [blame]
##
# Copyright 2019 Tech Mahindra Limited
#
# All Rights Reserved.
#
# 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.
##
## Change log:
# 1. Jayant Madavi, Mrityunjay Yadav : MY00514913@techmahindra.com : 21-nov-2019
##
*** Keywords ***
Configure NBI For RBAC
${rc} ${stdout}= Run and Return RC and Output docker service update osm_nbi --force --env-add OSMNBI_AUTHENTICATION_BACKEND=keystone --env-add OSMNBI_AUTHENTICATION_AUTH_URL=keystone --env-add OSMNBI_AUTHENTICATION_AUTH_PORT=5000 --env-add OSMNBI_AUTHENTICATION_USER_DOMAIN_NAME=default --env-add OSMNBI_AUTHENTICATION_PROJECT_DOMAIN_NAME=default --env-add OSMNBI_AUTHENTICATION_SERVICE_USERNAME=nbi --env-add OSMNBI_AUTHENTICATION_SERVICE_PROJECT=service
Should Be Equal As Integers ${rc} ${success_return_code}
Sleep 30s Wait for NBI service to be update
Create User
[Arguments] ${user} ${password}
${rc} ${stdout}= Run and Return RC and Output osm user-create ${user} --password ${password}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
List User
${rc} ${stdout}= Run and Return RC and Output osm user-list
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
List User And Check For The Created User
[Arguments] ${user}
${user list}= List User
Should Contain ${user list} ${user}
Get User Info By Name
[Arguments] ${user_name}
${rc} ${stdout}= Run and Return RC and Output osm user-show ${user_name}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
Get User Info By ID
[Arguments] ${user_id}
${rc} ${stdout}= Run and Return RC and Output osm user-show ${user_id}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
Update User
[Arguments] ${user} ${field} ${value}
${rc} ${stdout}= Run and Return RC and Output osm user-update ${field} ${value} ${user}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
Update User And Verify Info
[Arguments] ${user} @{args}
FOR ${arg} IN @{args}
${fields}= Get Dictionary Items ${arg}
Update User ${user} ${fields[0]} ${fields[1]}
END
${rc} ${stdout}= Run and Return RC and Output osm user-show ${user}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
Login With User And Perform Operation
[Arguments] ${user} ${password} ${project}
${rc} ${stdout}= Run and Return RC and Output export OSM_USER=${user}
Should Be Equal As Integers ${rc} ${success_return_code}
${rc} ${stdout}= Run and Return RC and Output export OSM_PROJECT=${project}
Should Be Equal As Integers ${rc} ${success_return_code}
${rc} ${stdout}= Run and Return RC and Output export OSM_PASSWORD=${password}
Should Be Equal As Integers ${rc} ${success_return_code}
${rc} ${stdout}= Run and Return RC and Output osm ns-list
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
Logout and Login With Admin
Logout and Login With Admin
${rc} ${stdout}= Run and Return RC and Output export OSM_USER=admin
Should Be Equal As Integers ${rc} ${success_return_code}
${rc} ${stdout}= Run and Return RC and Output export OSM_PASSWORD=admin
Should Be Equal As Integers ${rc} ${success_return_code}
${rc} ${stdout}= Run and Return RC and Output osm ns-list
Should Be Equal As Integers ${rc} ${success_return_code}
Delete User
[Arguments] ${user}
${rc} ${stdout}= Run and Return RC and Output osm user-delete ${user}
Should Be Equal As Integers ${rc} ${success_return_code}
Delete User And Check
[Arguments] ${user}
Delete User ${user}
${rc} ${stdout}= Run and Return RC and Output osm user-list
Should Be Equal As Integers ${rc} ${success_return_code}
Should Not Contain ${stdout} ${user}
Create Project
[Arguments] ${project}
${rc} ${stdout}= Run and Return RC and Output osm project-create ${project}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
List Project
${rc} ${stdout}= Run and Return RC and Output osm project-list
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
List Project And Verify
[Arguments] ${project}
${project list}= List Project
Should Contain ${project list} ${project}
Get Project Info By Name
[Arguments] ${project_name}
${rc} ${stdout}= Run and Return RC and Output osm project-show ${project_name}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
Get Project Info By ID
[Arguments] ${project_id}
${rc} ${stdout}= Run and Return RC and Output osm project-show ${project_id}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
Update Project
[Arguments] ${project} ${feild} ${value}
${rc} ${stdout}= Run and Return RC and Output osm project-update ${feild} ${value} ${project}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
Update Project Name And Verify
[Arguments] ${old_name} ${new_name}
Update Project ${old_name} --name ${new_name}
List Project And Verify ${new_name}
Delete Project
[Arguments] ${project}
${rc} ${stdout}= Run and Return RC and Output osm project-delete ${project}
Should Be Equal As Integers ${rc} ${success_return_code}
Delete Project And Verify
[Arguments] ${project}
Delete Project ${project}
${project_list}= List Project
Should Not Contain ${project_list} ${project}
Create Role
[Arguments] ${role}
${rc} ${stdout}= Run and Return RC and Output osm role-create ${role}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
List Roles
${rc} ${stdout}= Run and Return RC and Output osm role-list
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
List Roles And Verify
[Arguments] ${role}
${role_list}= List Roles
Should Contain ${role_list} ${role}
Get Role Info By Name
[Arguments] ${role}
${rc} ${stdout}= Run and Return RC and Output osm role-show ${role}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
Get Role Info By ID
[Arguments] ${role_id}
${rc} ${stdout}= Run and Return RC and Output osm role-show ${role_id}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
[Return] ${stdout}
Update Role
[Arguments] ${role} ${feild} ${value}
${rc} ${stdout}= Run and Return RC and Output osm role-update ${feild} ${value} ${role}
Should Be Equal As Integers ${rc} ${success_return_code}
log ${stdout}
Add Role And Verify
[Arguments] ${role} ${role_to_add}
Update Role ${role} --add ${role_to_add}
${role_info}= Get Role Info By Name ${role}
# Should Contain ${role_info} ${role_to_add}
Delete Role
[Arguments] ${role}
${rc} ${stdout}= Run and Return RC and Output osm role-delete ${role}
Should Be Equal As Integers ${rc} ${success_return_code}
Delete Role And Verify
[Arguments] ${role}
Delete Role ${role}
${role_list}= List Roles
Should Not Contain ${role_list} ${role}