Add lcm operate vserver code 23/10123/3
authorying.yunlong <ying.yunlong@zte.com.cn>
Mon, 4 Sep 2017 02:34:10 +0000 (10:34 +0800)
committeryunlong ying <ying.yunlong@zte.com.cn>
Mon, 4 Sep 2017 02:44:22 +0000 (02:44 +0000)
When create or delete vserver instance
in lcm, need to create or delete
vserver instance in aai.

Change-Id: I70043fb0204632a6cf9a41bf0e05e530aa436ff5
Issue-ID: VFC-249
Signed-off-by: ying.yunlong <ying.yunlong@zte.com.cn>
lcm/pub/msapi/aai.py

index 4cfc8e6..4ed8528 100644 (file)
@@ -90,3 +90,33 @@ def query_vnf_aai(vnf_id, data):
         logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
         raise NSLCMException("Vnf instance query exception in AAI")
     return json.JSONDecoder().decode(ret[1])
+
+def create_vserver_aai(cloud_owner, cloud_region_id, tenant_id, vserver_id, data):
+    resource = "/cloud-infrastructure/cloud-regions/cloud-region/%s/" \
+               "%s/tenants/tenant/%s/vservers/vserver/%s" % \
+               (cloud_owner, cloud_region_id, tenant_id, vserver_id)
+    ret = call_aai(resource, "PUT", data)
+    if ret[0] != 0:
+        logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
+        raise NSLCMException("Vserver creation exception in AAI")
+    return json.JSONDecoder().decode(ret[1])
+
+def delete_vserver_aai(cloud_owner, cloud_region_id, tenant_id, vserver_id, data):
+    resource = "/cloud-infrastructure/cloud-regions/cloud-region/%s/" \
+               "%s/tenants/tenant/%s/vservers/vserver/%s" % \
+               (cloud_owner, cloud_region_id, tenant_id, vserver_id)
+    ret = call_aai(resource, "DELETE", data)
+    if ret[0] != 0:
+        logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
+        raise NSLCMException("Vserver delete exception in AAI")
+    return json.JSONDecoder().decode(ret[1])
+
+def query_vserver_aai(cloud_owner, cloud_region_id, tenant_id, vserver_id, data):
+    resource = "/cloud-infrastructure/cloud-regions/cloud-region/%s/" \
+               "%s/tenants/tenant/%s/vservers/vserver/%s" % \
+               (cloud_owner, cloud_region_id, tenant_id, vserver_id)
+    ret = call_aai(resource, "GET", data)
+    if ret[0] != 0:
+        logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
+        raise NSLCMException("Vserver query exception in AAI")
+    return json.JSONDecoder().decode(ret[1])