| ## |
| # 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. |
| ## |
| |
| |
| from osmclient import client |
| from robot.api import logger |
| import json |
| |
| |
| class ClientLib: |
| def __init__(self, host="127.0.0.1", user=None, password=None, project=None): |
| |
| kwargs = {} |
| if user is not None: |
| kwargs['user'] = user |
| if password is not None: |
| kwargs['password'] = password |
| if project is not None: |
| kwargs['project'] = project |
| self.client = client.Client(host=host, sol005=True, **kwargs) |
| |
| def get_vim_list(self): |
| resp = self.client.vim.list() |
| logger.info('VIM List: {}'.format(resp)) |
| return json.dumps(resp) |
| |
| def create_vim_account(self, name, vim_type, user, password, auth_url, tenant, desc='', config=None): |
| vim_access = {} |
| if config is not None: |
| vim_access['config'] = config |
| vim_access['vim-type'] = vim_type |
| vim_access['vim-username'] = user |
| vim_access['vim-password'] = password |
| vim_access['vim-url'] = auth_url |
| vim_access['vim-tenant-name'] = tenant |
| vim_access['description'] = desc |
| |
| resp = self.client.vim.create(name, vim_access) |
| logger.info('Create VIM Account: {}'.format(resp)) |
| return json.dumps(resp) |
| |
| def delete_vim_account(self, name): |
| resp = self.client.vim.delete(name) |
| return json.dumps(resp) |
| |
| def get_vnfd_list(self): |
| resp = self.client.vnfd.list() |
| logger.info('VNF Descriptor List: {}'.format(resp)) |
| return json.dumps(resp) |
| |
| def get_nsd_list(self): |
| resp = self.client.nsd.list() |
| logger.info('NS Descriptor List: {}'.format(resp)) |
| return json.dumps(resp) |