## # 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}