aboutsummaryrefslogtreecommitdiffstats
path: root/lcm/pub/nfvi/vim/api/multivim/api.py
diff options
context:
space:
mode:
Diffstat (limited to 'lcm/pub/nfvi/vim/api/multivim/api.py')
-rw-r--r--lcm/pub/nfvi/vim/api/multivim/api.py15
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: