diff options
author | ying.yunlong <ying.yunlong@zte.com.cn> | 2017-09-06 15:14:47 +0800 |
---|---|---|
committer | ying.yunlong <ying.yunlong@zte.com.cn> | 2017-09-06 15:14:47 +0800 |
commit | 34d1eeacf2c6c01c3f523aaacdd04558c7e72433 (patch) | |
tree | 2f3a334af42bab9e84a4fc816e61ee31313ba96c | |
parent | 9043ea7dd60a598e5797f8008695852d3b7e9a5d (diff) |
Add methods to operate resource relationship
Add methods to operate resource relationship in vfc lcm.
Change-Id: Ibd88d91c80740db4777c15b47e6f9861195b549c
Issue-ID: VFC-293
Signed-off-by: ying.yunlong <ying.yunlong@zte.com.cn>
-rw-r--r-- | lcm/pub/msapi/aai.py | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/lcm/pub/msapi/aai.py b/lcm/pub/msapi/aai.py index 4ed8528d..d6e10ee7 100644 --- a/lcm/pub/msapi/aai.py +++ b/lcm/pub/msapi/aai.py @@ -120,3 +120,64 @@ def query_vserver_aai(cloud_owner, cloud_region_id, tenant_id, vserver_id, data) 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]) + +def put_vserver_relationship(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/relationship-list/relationship" % \ + (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("Put or update vserver relationship exception in AAI") + return json.JSONDecoder().decode(ret[1]) + + +def delete_vserver_relationship(cloud_owner, cloud_region_id, tenant_id, vserver_id): + resource = "/cloud-infrastructure/cloud-regions/cloud-region/%s/" \ + "%s/tenants/tenant/%s/vservers/vserver/%s/relationship-list/relationship" % \ + (cloud_owner, cloud_region_id, tenant_id, vserver_id) + ret = call_aai(resource, "DELETE") + if ret[0] != 0: + logger.error("Status code is %s, detail is %s.", ret[2], ret[1]) + raise NSLCMException("Delete vserver relationship exception in AAI") + return json.JSONDecoder().decode(ret[1]) + + +def put_vnf_relationship(vnf_id, data): + resource = "/network/generic-vnfs/generic-vnf/%s/relationship-list/relationship" % vnf_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("Put or update vnf instance relationship exception in AAI") + return json.JSONDecoder().decode(ret[1]) + + +def delete_vnf_relationship(vnf_id): + resource = "/network/generic-vnfs/generic-vnf/%s/relationship-list/relationship" % vnf_id + ret = call_aai(resource, "DELETE") + if ret[0] != 0: + logger.error("Status code is %s, detail is %s.", ret[2], ret[1]) + raise NSLCMException("Delete vnf instance relationship exception in AAI") + return json.JSONDecoder().decode(ret[1]) + + +def put_ns_relationship(global_customer_id, service_type, service_instance_id, data): + resource = "/business/customers/customer/%s/service-subscriptions/service-subscription/" \ + "%s/service-instances/service-instance/%s/relationship-list/relationship" % \ + (global_customer_id, service_type, service_instance_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("Put or update ns instance relationship exception in AAI") + return json.JSONDecoder().decode(ret[1]) + + +def delete_ns_relationship(global_customer_id, service_type, service_instance_id): + resource = "/business/customers/customer/%s/service-subscriptions/service-subscription/" \ + "%s/service-instances/service-instance/%s/relationship-list/relationship" % \ + (global_customer_id, service_type, service_instance_id) + ret = call_aai(resource, "DELETE") + if ret[0] != 0: + logger.error("Status code is %s, detail is %s.", ret[2], ret[1]) + raise NSLCMException("Delete ns instance relationship exception in AAI") + return json.JSONDecoder().decode(ret[1]) |