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

4425b2b0a-870
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

E2E Demo


Jira

  • ReadTheDoc  updates
    • event models
    • inventory model (state)
  • 2

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

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

    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
    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-6771163
    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-817
    Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-8371165
    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-731
    Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolutionserverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-10161167

    32

    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. 

    Support public CM handle propertiesBasic support for public properties + query capability

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

    Sourabh Sourabh 

    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-821817
    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-837
    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-828731

    Jira
    key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverONAP Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columns
    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 

    829
    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-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

    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
    serverId425b2b0aserverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyREQCPS-1281829
    Jira
    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

    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-

    serverId

    557c-3c0c-b515-579789cceedb
    keyCPS-

    830
    Jira
    serverONAP Jira

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

    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,

    JiraserverONAP JiracolumnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolutioncolumnskey,summary,

    type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-832

    41014

    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    key

    CPS

    REQ-

    1000

    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
    serverId
    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-1003870
    Jira
    serverONAP Jira

    columnIdsissuekey,summary,issuetype,created,

    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-

    1119
    • RTD Docs
      • datatstore sync state
    5

    1014
    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    key

    REQ-1281 Jiraserver

    CPS-

    NCMPSupport retrieval of YANG module sources for CM handle on the NCMP interfaceSourabh Sourabh 

    1000
    Jira
    server

    ONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-

    1064

    1001

    6

    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    key

    REQ-1281

    CPS-

    NCMP

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

    11367

    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
    key
    REQ
    CPS-
    1281CPS-NCMP[investigation/spec] CM data notifications from NCMP to applications including subscriptionsIncludes definition of notification and payload formatkieran mccarthy  JiraserverONAP Jira
    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-
    1065
    1164
    85

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

    CPS-NCMPImplementation of CM data notifications forwarded by NCMP from DMI to applicationSupport retrieval of YANG module sources for CM handle on the NCMP interface
    Sourabh Sourabh 

    Jira
    serverONAP JiracolumnIdsissuekey,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-11451064

    96

    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 implementationTriggered by client using REST endpoint on NCMP. Note: This item includes extended support for datastores to access the synced data.

    DMI Audit


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

    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyCPS-
    1133
    • CIST Tests for Data-Sync
    10
    1236

    Jira
    serverONAP Jira
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    key
    REQ
    CPS-
    1281
    1362
    7Requirement 
    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 dateNeed to investigate if DMaap or new Kafka/Strimzi message bus should be used

    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 implementationTriggered 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 dateNeed 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

    1411CPS-NCMPRegistration Performance

    NCMP shall register new cmhandles (to READY state) at a rate of x 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.

    12CPS-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 cmhandle13

    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.



    1415
    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))


    1516
    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.



    1617

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

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

    1718
    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)



    1819
    CPS-Core /
    CPS-NCMPAccess control for public interfaces (NCMP, CPS-Core, DMI?)


    1920
    CPS-NCMPFine-grained cache configuration


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


    2122
    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

    2223

    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.

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


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


    2526
    CPS-Core /
    CPS-NCMPSupport 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

    2627
    CPS-Core /
    CPS-NCMPSupport 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

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

    2829(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

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

    3031
    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 = "Jakarta 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.