|
|
|
===
|
| Support for NS Inventory (AAI) Adapter |
| - Provides access for AAI for NS LCM, leveraging the AAI client module
- Refactoring of the current AAI Adapter
- Support for NS AAI APIs (CRUD)
- Support for Network AAI APIs (CRUD)
- Support for VNF AAI APIs (CRUD)
- Support for Vserver AAI APIs (CRUD)
- Support for Customer AAI APIs (CRUD) - TBD
| No | Jira |
---|
server | ONAP JIRA |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | SO-2846 |
---|
|
|
|
|
|
| Support for NS AAI APIs (CRUD) | - supports the Create NS AAI (global_customer_id, service_type, service_instance_id, data)
data = { "service-instance-id": ns_inst_id, "service-instance-name": ns_name, "service-type": NetworkService, "service-role": NetworkService } resource = /business/customers/customer/{global_customer_id}/service-subscriptions/service-subscription/{service_type}/service-instances/service-instance/{service_instance_id} - call AAI (resource, "PUT", data)
- supports the Query NS AAI (global_customer_id, service_type, service_instance_id)
- supports the Delete NS AAI (global_customer_id, service_type, service_instance_id, resource_version)
- resource = /business/customers/customer/{global_customer_id}/service-subscriptions/service-subscription/{service_type}/service-instances/service-instance/{service_instance_id}
- if resource_version is not empty, resource_version = resource + "?resource-version={resource_version}
- call AAI (resource, "DELETE")
| No | Jira |
---|
server | ONAP JIRA |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | SO-2880 |
---|
|
|
|
|
|
| Support for Network AAI APIs (CRUD) | - supports the Create Network AAI (network_id, data)
data = { "network-id": self.vl_inst_id, "network-name": self.vl_inst_id, "is-bound-to-vpn": False, "is-provider-network": True, "is-shared-network": True, "is-external-network": True, "relationship-list": { "relationship": [ { "related-to": "service-instance", "relationship-data": [ { "relationship-key": "customer.global-customer-id", "relationship-value": self.global_customer_id }, { "relationship-key": "service-subscription.service-type", "relationship-value": self.service_type }, { "relationship-key": "service-instance.service-instance-id", "relationship-value": self.owner_id } ] } ] } } - resource = network/l3-networks/l3-network/{network_id}
- call AAI (resource, "PUT", data)
- supports the Delete Network AAI (network_id, resource_version="")
- resource = network/l3-networks/l3-network/{network_id}
- if resource_version is not empty, resource_version = resource + "?resource-version={resource_version}
- call AAI (resource, "DELETE")
- supports the Query Network AAI (network_id)
- resource = network/l3-networks/l3-network/{network_id}
- call AAI (resource, "GET")
- supports the Create subnet AAI (network_id, subnet_id, data)
resource = /network/l3-networks/l3-network/{network_id}/subnets/subnet/{subnet_id} data = { "subnets": { "subnet": [ { "subnet-id": self.related_subnetwork_id, "dhcp-enabled": False } ] }, } - call AAI (resource, "PUT", data)
- supports the Query subnet AAI (network_id, subnet_id)
- resource = /network/l3-networks/l3-network/{network_id}/subnets/subnet/{subnet_id}
- call AAI (resource, "GET")
- supports the Delete subnet AAI (network_id, subnet_id, resource_version = "")
- resource = /network/l3-networks/l3-network/{network_id}/subnets/subnet/{subnet_id}
- if resource_version is not empty, resource_version = resource + "?resource-version={resource_version}
- call AAI (resource, "DELETE")
| No | Jira |
---|
server | ONAP JIRA |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | SO-2881 |
---|
|
|
|
|
|
| Support for VNF AAI APIs (CRUD) | | No | Jira |
---|
server | ONAP JIRA |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | SO-2882 |
---|
|
|
|
|
|
| Support for Vserver AAI APIs (CRUD) | supports the Create Vserver AAI (cloud_owner, cloud_region_id, tenant_id, vserver_id, data) - resource = /cloud-infrastructure/cloud-regions/cloud-region/{cloud_owner}/{cloud_region_id}/tenants/tenant/{tenant_id}/vservers/vserver/{vserver_id}
data = { "vserver-id": vserver_id, "vserver-name": vserver_name, "prov-status": "ACTIVE", "vserver-selflink": "", "in-maint": True, "is-closed-loop-disabled": False, "relationship-list": { "relationship": [ { "related-to": "generic-vnf", "relationship-data": [ { "relationship-key": "generic-vnf.vnf-id", "relationship-value": vnf_instid } ] } ] } } - call AAI (resource, "PUT", data)
- supports the Query Vserver AAI (cloud_owner, cloud_region_id, tenant_id, vserver_id)
- resource = /cloud-infrastructure/cloud-regions/cloud-region/{cloud_owner}/{cloud_region_id}/tenants/tenant/{tenant_id}/vservers/vserver/{vserver_id}?depth=all
- call AAI (resource, "GET")
- supports the Delete Vserver AAI (cloud_owner, cloud_region_id, tenant_id, vserver_id, resource_version="")
- resource = /cloud-infrastructure/cloud-regions/cloud-region/{cloud_owner}/{cloud_region_id}/tenants/tenant/{tenant_id}/vservers/vserver/{vserver_id}
- if resource_version is not empty, resource_version = resource + "?resource-version={resource_version}
- call AAI (resource, "DELETE")
| No | Jira |
---|
server | ONAP JIRA |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | SO-2883 |
---|
|
|
|
|
|
| Support for Customer AAI APIs (CRUD) | |
|
|
|
|
| Support for NS LCM Database Management Enhancement |
| vlinstanceid = models.CharField(db_column='VLINSTANCEID', max_length=255, primary_key=True)
vldid = models.CharField(db_column='VLDID', max_length=255)
vlinstancename = models.CharField(db_column='VLINSTANCENAME', max_length=255, blank=True, null=True)
ownertype = models.IntegerField(db_column='OWNERTYPE')
ownerid = models.CharField(db_column='OWNERID', max_length=255)
relatednetworkid = models.CharField(db_column='RELATEDNETWORKID', max_length=255, blank=True, null=True)
relatedsubnetworkid = models.CharField(db_column='RELATEDSUBNETWORKID', max_length=255, blank=True,
null=True)
vltype = models.IntegerField(db_column='VLTYPE', default=0)
vimid = models.CharField(db_column='VIMID', max_length=255)
tenant = models.CharField(db_column='TENANT', max_length=255)
status = models.CharField(db_column='STATUS', max_length=255)
Also, regression testing is necessary for SOL005 NS operations. - validate the existing SO NFVO database tables
|