diff options
Diffstat (limited to 'lcm/pub/nfvi/vim/api/multivim/api.py')
-rw-r--r-- | lcm/pub/nfvi/vim/api/multivim/api.py | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lcm/pub/nfvi/vim/api/multivim/api.py b/lcm/pub/nfvi/vim/api/multivim/api.py index 3b73a0f4..7556e9e3 100644 --- a/lcm/pub/nfvi/vim/api/multivim/api.py +++ b/lcm/pub/nfvi/vim/api/multivim/api.py @@ -26,10 +26,19 @@ VIM_DRIVER_BASE_URL = "api/multicloud/v0" def call(vim_id, tenant_id, res, method, data=''): if data and not isinstance(data, (str, unicode)): data = json.JSONEncoder().encode(data) - url = "{base_url}/{vim_id}{tenant_id}/{res}".format( + vim_id = json.JSONDecoder().decode(vim_id) if isinstance(vim_id, (str, unicode)) else vim_id + cloud_owner = vim_id['cloud_owner'] + cloud_regionid = vim_id['cloud_regionid'] + # url = "{base_url}/{vim_id}{tenant_id}/{res}".format( + # base_url=VIM_DRIVER_BASE_URL, + # vim_id=vim_id, + # tenant_id="/" + tenant_id if tenant_id else "", + # res=res) + url = "{base_url}/{cloud_owner}/{cloud_regionid}/{tenant_id}/{res}".format( base_url=VIM_DRIVER_BASE_URL, - vim_id=vim_id, - tenant_id="/" + tenant_id if tenant_id else "", + cloud_owner=cloud_owner, + cloud_regionid=cloud_regionid, + tenant_id=tenant_id if tenant_id else "", res=res) ret = req_by_msb(url, method, data) if ret[0] > 0: |