OSM SOL005 client API
"""
-#from osmclient.v1 import vnf
-#from osmclient.v1 import ns
-#from osmclient.v1 import vim
#from osmclient.v1 import vca
from osmclient.sol005 import vnfd
from osmclient.sol005 import nsd
from osmclient.sol005 import ns
+from osmclient.sol005 import vnf
from osmclient.sol005 import vim
from osmclient.sol005 import package
from osmclient.sol005 import http
+from osmclient.sol005 import sdncontroller
from osmclient.common.exceptions import ClientException
+import json
class Client(object):
if ro_host is None:
ro_host = host
- ro_http_client = http.Http('http://{}:{}/'.format(ro_host, ro_port))
+ ro_http_client = http.Http('http://{}:{}/openmano'.format(ro_host, ro_port))
ro_http_client.set_http_header(
- ['Accept: application/vnd.yand.data+json',
+ ['Accept: application/json',
'Content-Type: application/json'])
self._http_client = http.Http(
self._headers['Accept'] = 'application/json'
self._headers['Content-Type'] = 'application/yaml'
http_header = ['{}: {}'.format(key,val)
- for (key,val) in self._headers.items()]
+ for (key,val) in list(self._headers.items())]
self._http_client.set_http_header(http_header)
token = self.get_token()
self.package = package.Package(self._http_client, client=self)
self.ns = ns.Ns(self._http_client, client=self)
self.vim = vim.Vim(self._http_client, client=self)
+ self.sdnc = sdncontroller.SdnController(self._http_client, client=self)
+ self.vnf = vnf.Vnf(self._http_client, client=self)
'''
- self.vnf = vnf.Vnf(http_client, client=self, **kwargs)
self.vca = vca.Vca(http_client, client=self, **kwargs)
self.utils = utils.Utils(http_client, **kwargs)
'''
postfields_dict = {'username': self._user,
'password': self._password,
'project-id': self._project}
- token = self._http_client.post_cmd(endpoint=self._auth_endpoint,
+ http_code, resp = self._http_client.post_cmd(endpoint=self._auth_endpoint,
postfields_dict=postfields_dict)
+ if http_code not in (200, 201, 202, 204):
+ raise ClientException(resp)
+ token = json.loads(resp) if resp else None
if token is not None:
return token['_id']
return None