Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Overview

Project NameEnter the name of the project
Target Release NameKohn
Project Lifecycle StateIncubation
Participating Companies Bell Canada, Ericsson, Wipro

Scope

What is this release trying to address?

Further integrate CPS into ONAP architecture through additional components and interfaces such as

  • Extend Sync to include data sync and maintaining sync state
  • AAI integration
  • Read access to cached data (datastore ncmp-datastores:operational)

Minimum Viable Product

N/A

Requirements

Priority legend
Committent Legend
PreliminaryFixedIn ProgressPausedCompletedDe-scoped
Delivered
(on master)
CommittedStudy/Investigation
No delivery
Partial Delivery

De-scoped

ONAP Best Practices (Global Requirements)

ONAP RequirementNotesCPS- Jira(s)

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-443

Aiming for gold!
  1. Need to complete Survey
  2. Dependency on ONAP Infrastructure Tickets

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1140

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-439


Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1106

CPS-CORE / CPS-NCMP Requirements

PriorityKohn
Requirement Jira
Component(s)DescriptionNotesPrinciple Point of ContactJira(s)
1

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMPNCMP should publish notifications for any newly added (once the modules are synced) or deleted cm handles. 
Note. This depends on persists hand handling state transitions
Includes implementation of state handling (state persistence) as far as applicable as defined by #7 above

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-858

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-872
 

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-874
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-875
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-876
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-877
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-878
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-909

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-899
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-898

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-977
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1015

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1034
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1045

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1046
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1076
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1100
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1102
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1101
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1099
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1120
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1104


Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1162
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1163
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1165
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1167

2

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMPSupport public CM handle propertiesBasic support for public properties + query capability

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-677
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-817
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-837
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-731

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1016

3

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMP

Implement -async option for CRUD and Patch operations (for one CM-Handle)

Required for potentially long running requests

Note below to be agreed.,,

/ncmp/v1/data/ch/123ee5/ds/ncmp-datastore:*?topic=<topic-name> 

Accept : application/yang-data+json, application/json

Responses always published by NCMP to the client topic.

dmi-plugin may publish to NCMP on a local/private topic.  Response event payload contains the public topic name. 

Sourabh Sourabh 

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-821
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-828
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-829
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-830
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-832

4

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281
Requirement 
E2E Slicing for next release!

CPS-NCMPSupport ncmp-datastores:operational for reading data (single CM handle, synchronous only)See CPS-391 page for details about supported operations and combinations.
Note 1. There can be some overlap between work items for (CPS R10 Release Planning #5, #6, #11 and #12)
Note 2. This item doesn't include accessing cached data as data sync is not available yet. If no cache data forward ncmp-datastores:passthrough-operational?!

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-870
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-996
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-999
 

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1014
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1000
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1001
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1002
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1003

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1119
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1164
5

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMPSupport retrieval of YANG module sources for CM handle on the NCMP interface
Sourabh Sourabh 

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1064

6

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMP

DMI Audit


Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1136

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1236

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1362
7

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMP[investigation/spec] CM data notifications from NCMP to applications including subscriptionsIncludes definition of notification and payload formatkieran mccarthy 

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1065
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1259

8

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMPImplementation of CM data notifications forwarded by NCMP from DMI to application

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1145
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1166


9

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMPExplicit (initial) data-sync for a CM handle (extend model-sync delivered in Istanbul)
Note. Requires cache configuration specification and some minimal implementation
Triggered by client using REST endpoint on NCMP. Note: This item includes extended support for datastores to access the synced data.

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1133
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1168


10

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281
Requirement 
E2E Slicing for next release!

CPS-NCMPSupport update of cached data through a message driven solution
E.g. TBDMT/SND-R will write to device and can send message on NCMP provide message topic to keep cache up to date
Need to investigate if DMaap or new Kafka/Strimzi message bus should be used

11
CPS-NCMPRegistration Performance

NCMP shall register new cmhandles (to READY state) at a rate of 11 cmhandles/second (assumes no dmi-plugin delays, assumes 180 modules per cmhandle with 95% module overlap between cmhandles, assumes cache disabled).

Treat this as a black box requirement.  May mean underlying requirement to have multiple instances, memory requirement etc.  Focus right now is 23.Q1 timeframe.

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1172

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1126
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1275
Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1267
12
CPSData Read Performance

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1171

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1222

13
CPS-NCMPDeletion PerformanceNCMP shall delete/remove cmhandles (to DELETING state) at a rate of 50 cmhandles/second with cache disabled (assumes no dmi-plugin delays, assumes 180 modules per cmhandle with 95% module overlap between cmhandles)
Note: check with Gergely on priority as DELETING state will prevent user to act on cmhandle

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1173

14

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-1281

CPS-NCMPInvoke YANG modelled action

Always on operational datastore.  Supported for nmcp:passthrough-operational and if executed against ncmp:operational then it is always forwarded to dmi plugin.  Is there another story for forwarding to be included as a dependency? Always run as async request.  Is this dependent on CPS-1127  - see spin-off user stories table below this on.



15
CPS-NCMPEnhanced query supportCurrently the passthrough has an 'option' parameter to do a scoped query.  Propose to support this in non-passthrough so it is promoted to a fully supported option, e.g. {ncmp-root}/ncmp/v1/ch/335ff/data/ds/ncmp-datastore:passthrough-operational?
              resourceIdentifier=/&options=(fields=ericsson-enm-comtop:ManagedElement/ericsson-enm-
              gnbcucp:GNBCUCPFunction
/EndpointResource/LocalSctpEndpoint/attributes(sctpEndpointRef),
              scope=ericsson-enm-comtop:ManagedElement/ericsson-enm-gnbcucp:GNBCUCPFunction/
               EndpointResource/LocalSctpEndpoint/attributes(interfaceUsed==X2))


16
CPS_Core / CPS-NCMPUpdate YANG schema-set for CM handle without removing and adding it

Cached data is not in scope. Need to specify orphan handling of YANG modules.

Needed for node upgrade scenario.



17

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1135

CPS-NCMPRetrieve single module resource/v1/ch/{cm-handle}/modules/definitions/{moduleName}

18
CPS-Core / CPS-NCMPExisting CPS-path based queries across all CM handles for cached data

Look to define the interface specification for this only.

(but best way is to implement for operational/cached data to determine any output formatting issues)



19
CPS-Core /
CPS-NCMP
Access control for public interfaces (NCMP, CPS-Core, DMI?)


20
CPS-NCMPFine-grained cache configuration


21
CPS-NCMPSend notification for updated CM handle metadata (public CM handle properties or YANG modules)


22
CPS-Core /
CPS-NCMP

Support for HTTPS and authentication

  • Use Service-Mesh? Both ONAP and Ericsson (applied ISTIO using Envoy Proxy side-car) are working towards this. Check with Gareth Roper 


Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-703

23

TBC

CPS-NCMPSupport ncmp-datastores:running for reading data (single CM handle, synchronous only)See CPS-391 page for details about supported operations and combinations. Note: There can be some overlap between work items for #5, #6, #11 and #12.

24TBCCPS-Core /
CPS-NCMP
Support ncmp-datastores:running for writing data (single CM handle, synchronous only)


25TBCCPS-CoreSend notifications on write operation in ncmp-datastores:running for (single CM handle, synchronous only)


26
CPS-Core /
CPS-NCMP
Support for list as top level data node

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-491

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-765
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-766
Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-767

27
CPS-Core /
CPS-NCMP
Support for multiple top-elements from different modules in one CM handle/anchor



Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1051

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-341

28
CPS-Core /
CPS-NCMP
schema-set update for CM handle with cached data presentNeed to address case with incompatible model changes.

29(ONAP) E2E Slicing Use-Case

Support dynamic inventory changes (ONAP DMI Plugin)

React to events from AAI sent over DMaaP, in turn using Inventory API for updates.
Strimzi-Kafka Bridge might be an alternative, check with Fiachra Corcoran  on the latest for this when implementing this (

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyDMAAP-1681
)

Possible in a generic way or it can also listen to similar events sent by SDN-R  (as suggested by Ahila P)


Jira
serverONAP JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-392
Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-393

30
CPS-NCMPAutomatic (optional) Data Sync Metadata (per cmHandle) controls whether this will happen or not

31
CPS-NCMPInvoke YANG modelled RPC


Spin-off user stories, yet to be prioritized

 JiraComponent(s)Related Work ItemDescriptionNotes

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1103

CPS-NCMP4

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1127

CPS-NCMP4

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1132

CPS-NCMP1

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1174

CPS-NCMP8

Jira
serverONAP Jira
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyCPS-1183

CPS-NCMP
Investigation on the use of Liquibase to install NCMP artifacts

Functionalities

User Stories

Expand
titleOpen User Stories REQ-1281 (CPS Enhancements)

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQuery"Epic Link" in (REQCPS-12811410) AND status = Open ORDER BY fixVersion ASC, priority DESC
serverId425b2b0a-557c-3c0c-b515-579789cceedb


Expand
titleImprovements & Technical Debt (any release)

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryfilter=12620
serverId425b2b0a-557c-3c0c-b515-579789cceedb


Expand
titleClosed Stories

Jira
serverONAP Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryproject = CPS AND type = Story AND fixVersion = "Kohn Release" AND status in (Closed, Done) ORDER BY updated DESC
serverId425b2b0a-557c-3c0c-b515-579789cceedb

Longer term roadmap

  • CPS-Core will have extended query capabilities based on XPath expression.
  • CPS-Core will enforce and control ownership of data it holds
  • NCMP will be to able to 'detect' and sync xNF in the network
    • Fine-cache cache control will determine what get cache for what xNF
  • NCMP will support the query capabilities as CPS-Core and be extend with options similar to RESTConf's 'fields' and 'depth'

Release Deliverables

Indicate the outcome (Executable, Source Code, Library, API description, Tool, Documentation, Release Note, etc) of this release.

Deliverable NameDeliverable Description

onap/cps-and-ncmp

Container running CPS and NCMP
onap/cps-temporalContainer running CPS Temporal
onap/ncmp-dmi-pluginContainer running OMAP DMI Plugin
docs.onap.org/projects/onap-cps

CPS-NCMP Documentation for R10 (incl. offered APIs and release note)

docs.onap.org/projects/onap-cps-ncmp-dmi-pluginONAP DMI-Plugin Documentation for R10 (incl. offered APIs and release note)
docs.onap.org/projects/onap-cps-cps-temporalCPS-Temporal Documentation for R10 (incl. offered APIs and release note)

Sub-Components

  • CPS-Core
    • cps-service
    • cps-rest
    • cps-ri (reference implementation)
  • NCMP
    • cps-ncmp-service
    • cps-ncmp-rest
    • dmi-inventory
  • Temporal DB
  • DMI-Plugin
    • DMI Data Access
    • DMI Model Access

Architecture

High level architecture diagram

CPS is a new shared service in the ONAP Architecture:



Platform Maturity

See the centralized wiki page: Kohn Release Platform Maturity


  • API Incoming Dependencies

No Incoming API changes required

  • API Outgoing Dependencies

API this project is delivering to other projects.

API NameAPI DescriptionAPI Definition DateAPI Delivery dateAPI Definition link (i.e.swagger)

CPS-E-01
CPS-E-02
CPS-E-03

CPS Model LifeCycle
CPS Data Write
CPS Data Read


Swagger Sources (openapi.yaml)
CPS-E-04Change notifications


CPS-E-05xNF Data Access

Swagger Sources (openapi.yaml)
CPS-E-06Temporal Data Access
(no other component currently depends on this or plan to use it in Istanbul)


Swagger Sources (openapi.yml)
  • Third Party Products Dependencies

Third Party Products mean products that are mandatory to provide services for your components. 

NameDescriptionCPS-Core CPS-NCMPCPS-Temporal 
3PP Version
DockerVM Container18 and above18 and above18 and above
ODL Yang ToolsYang model and Data Parser6.0.1 6.0.1 N/A 
Postgres Docker imageVM container for Postgres13.2-alpine13.2-alpineN/A
onap/integration-java11Java Base image8.0.08.0.08.0.0
SwaggerOpenAPI library2.1.42.1.4

springdoc-openapi-ui:1.5.9

SpringFoxOpenAPI library3.0.03.0.03.0.0
Hibernate typesSupport for Postgres datatype JSONB2.10.02.10.02.10.0
Spring BootApplication Framework2.6.92.6.92.6.9
Commons-lang33pp3.113.113.12.0
Antlr4-runtimeLanguage parser4.9.24.9.2N/A
LiquibaseDB Schema (version) management4.4.2-nordix4.4.2-nordix4.4.2-nordix
HazelcastDistributed Cache4.2.5N/AN/A



  • Gaps

No gaps Identified

  • Known Defects and Issues

See dynamic Jira filter:

Jira
serverONAP Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryproject = CPS and type = bug and status = open
serverId425b2b0a-557c-3c0c-b515-579789cceedb

  • Risks

Risk identified related to scope-creep, see Kohn Risk Table 

  • Resources

Excerpt Include
Configuration Persistence Service Developer's Landing Page
Configuration Persistence Service Developer's Landing Page

  • Release Milestone

The milestones are defined at the Release Planning and all the supporting project agreed to comply with these dates.

  • Team Internal Milestone

This section is optional and may be used to document internal milestones within a project team or multiple project teams. For instance, in the case the team has made agreement with other team to deliver some artifacts on a certain date that are not in the release milestone, it is recommended to provide these agreements and dates in this section.

  • Documentation, Training

See the following centralized wiki: Kohn Documentation

Other Information

  • Vendor Neutral

If this project is coming from an existing proprietary codebase, ensure that all proprietary trademarks, logos, product names, etc. have been removed. All ONAP deliverables must comply with this rule and be agnostic of any proprietary symbols.

  • Free and Open Source Software

FOSS activities are critical to the delivery of the whole ONAP initiative. The information may not be fully available at Release Planning, however to avoid late refactoring, it is critical to accomplish this task as early as possible.
List all third party Free and Open Source Software used within the release and provide License type (BSD, MIT, Apache, GNU GPL,... ).
In the case non Apache License are found inform immediately the TSC and the Release Manager and document your reasoning on why you believe we can use a non Apache version 2 license.

Each project must edit its project table available at Project FOSS.


Charter Compliance

The project team comply with the ONAP Charter.