summaryrefslogtreecommitdiffstats
path: root/newton/newton/pub/msapi/extsys.py
diff options
context:
space:
mode:
authorBin Yang <bin.yang@windriver.com>2017-10-11 17:47:54 +0800
committerBin Yang <bin.yang@windriver.com>2017-10-11 17:47:54 +0800
commit1edcf2d1278419ec8862362b7dd9686169a4f654 (patch)
treea699c1eaefb8fe4251b9c69d6fd00c53e1e8a9ce /newton/newton/pub/msapi/extsys.py
parent32a106d589916760dd2232c6a8570aa57c0ee893 (diff)
Fix registration error
Change-Id: I6d4cd20fbd913eb21a78247434e79d4d50276dda Issue-Id: MULTICLOUD-111 Signed-off-by: Bin Yang <bin.yang@windriver.com>
Diffstat (limited to 'newton/newton/pub/msapi/extsys.py')
-rw-r--r--newton/newton/pub/msapi/extsys.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/newton/newton/pub/msapi/extsys.py b/newton/newton/pub/msapi/extsys.py
index 0f08adb4..bd8b1e4e 100644
--- a/newton/newton/pub/msapi/extsys.py
+++ b/newton/newton/pub/msapi/extsys.py
@@ -51,6 +51,7 @@ def get_vim_by_id(vim_id):
if tmp_viminfo and tmp_authinfo:
viminfo = {}
viminfo['vimId'] = vim_id
+ viminfo['resource-version'] = tmp_viminfo.get('resource-version')
viminfo['cloud_owner'] = cloud_owner
viminfo['cloud_region_id'] = cloud_region_id
viminfo['type'] = tmp_viminfo.get('cloud-type')
@@ -73,9 +74,14 @@ def get_vim_by_id(vim_id):
def delete_vim_by_id(vim_id):
cloud_owner, cloud_region_id = decode_vim_id(vim_id)
if cloud_owner and cloud_region_id:
+ #get the vim info
+ viminfo = get_vim_by_id(vim_id)
+ if not viminfo or not viminfo['resource-version']:
+ return 0
+
retcode, content, status_code = \
- restcall.req_to_aai("/cloud-infrastructure/cloud-regions/cloud-region/%s/%s"
- % ( cloud_owner, cloud_region_id), "DELETE")
+ restcall.req_to_aai("/cloud-infrastructure/cloud-regions/cloud-region/%s/%s?resource-version=%s"
+ % ( cloud_owner, cloud_region_id, viminfo['resource-version']), "DELETE")
if retcode != 0:
logger.error("Status code is %s, detail is %s.", status_code, content)
raise VimDriverNewtonException(