Versions Compared

Key

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

...

9
PartialSystem Jira

the client topic.

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

PriorityJakarta Requirement JiraComponent(s)DescriptionNotesJakarta commitmentJira(s)
1

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPRetrieve list of modules (names) for a CM handleUsed by applications to get cached information from NCMP about modelsDelivered in Istanbul

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-485

2

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPSupport ncmp-datastores:passthrough-running for read use-case (single CM handle, synchronous only)Need more details planning and prioritization for use-case not already supported list in this table : CPS-391Spike: Define and Agree NCMP REST Interface#Datastore,PathsandFormatCombinationsforReadOperationsDelivered in Istanbul

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-615

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-646

3

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPSeparate NCMP-DMI interface from northbound facing 'client' interfaceCommitted

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-645

4

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPRetrieve cm-handles that have a given list modules
Committed

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-644

5

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPAllow separate registration of DMIDataPlugin and DmiModelPlugin
Committed

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-736

6

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPSupport ncmp-datastores:passthrough-running for write use-case (single CM handle, synchronous only)Replace, Delete & Patch use-cases (#2, #3, #4) in :  CPS-391Spike: Define and Agree NCMP REST Interface#Datastore,PathsandFormatCombinationsforWriteOperationsCommitted

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-636
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-637
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-638
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-639
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-640
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-641

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-782
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-777

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-822
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-823
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-824
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-825

7

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPDefine states and state handling for CM handle, e.g. state of model and data sync
Committed (definition only)

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-799

8


CPS-NCMPNCMP should publish notifications for any newly added (once synced) or deleted cm handles. Includes implementation of state handling (state persistence) as far as applicable as defined by #7 above

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-858

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-872
 

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-874
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-875
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-876
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-877
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-878
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-909
9

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

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

Partial Delivery

(query part might not make Jakarta)

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-677
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-817
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-837
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-731

10

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-Core /
CPS-NCMP
Investigate Horizontal Scaling
Study & Test only

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-786

11


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. 

Partial Delivery
Jira Legacy
serverPartial Delivery

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-821
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-828
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-829
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-830
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-832

12

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPRead access at datastore level

This allows applications to query top-level data nodes without explicitly addressing them. 


Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-745

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-802

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-792

13

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-CoreYANG language extension supportInvestigationCommitted (investigation only)

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-735
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-866

14

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1085

CPS-CoreE2E Slicing Impacts JakartaJ-delivery  wil just include CPS-Core output alignment. But CPS Team will continue to work on cache-related items during Jakarta to be ready for inclusion of that functionality in K to such an extend that in can be used by E2E Sling

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-865
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-819

Temporal DB Requirements

PriorityJakarta Requirement JiraComponent(s)DescriptionNotesJakarta commitmentJira(s)
1

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-TEMPORALAdd support for data deletion events in CPS Temporal
Committed

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-470

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-789

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-790

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-826

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-791

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-844

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-847

Functionalities


Stories

Expand
titleClosed Stories

Jira Legacy
serverSystem 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 Release" AND status in (Closed, Done) ORDER BY updated DESC
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176


Expand
titleImprovements & Technical Debt (any release)

Jira Legacy
serverSystem 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
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176


Expand
titleStories in progress or on backlog

Jira Legacy
serverSystem 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 Release" AND status not in (Closed, Done) ORDER BY status DESC
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

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 able to sync CM Models and Data on any xNF in the network
  • MCMP wil support the query capabilities as CPS-Core and be extend with options similar to RESTConf's 'fields' and 'depth'
  • CPS Temporal aims to complement CPS Core by providing an historical view on CPS data.

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:


Image Added


Platform Maturity

See the centralized wiki page: Jakarta 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. 

NameDescriptionVersion
DockerVM Container18 and above
ODL Yang ToolsYang model and Data Parser6.0.1 
Postgres Docker imageVM container for Postgres13.2-alpine
onap/integration-java11Java Base image8.0.0
SwaggerOpenAPI library2.1.4
SpringFoxOpenAPI library3.0.0
Hibernate typesSupport for Postgres datatype JSONB2.10.0
Spring BootApplication Framework2.5.5
cglib-nodep3pp3.1
commons-lang33pp3.12.0
antlr4-runtimeLanguage parser4.9.2
liquibaseDB Schema (version) management4.4.2
modelmapperModel mapper library2.3.8



  • Gaps

No gaps Identified

  • Known Defects and Issues

See dynamic Jira filter:

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryproject = CPS and type = bug and status = open
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

  • Risks

No Risks identified, see also Jakarta Risk Table 

  • Resources

Insert excerpt
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: Jakarta 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.

Table of Contents

Overview

Project NameEnter the name of the project
Target Release NameJakarta
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

  • Extending xNF data write forwarding (delete, update, patch)
  • Extend Sync to include data sync and maintaining sync state
  • AAI integration
  • Read access to cached data (datastore ncmp-datastores:operational)
  • Support Delete event in CPS Temporal

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 Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1072

Only effects new code but we are adding logging during Jakarta time-frame so have to try to follow the recommended standard

Concerns about availability of all required fields 
Can fields be populated using Springboot automatically?

Robert Heinemann will organize meeting with us

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-869

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1073

Toine Siebelink  checked and all 3 CPS repos are using /onap/integration-java11:8.0.0 as their base image. So no impact for this Req.

N/A


CPS-CORE / CPS-NCMP Requirements

PriorityJakarta Requirement JiraComponent(s)DescriptionNotesJakarta commitmentJira(s)
1

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPRetrieve list of modules (names) for a CM handleUsed by applications to get cached information from NCMP about modelsDelivered in Istanbul

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-485

2

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPSupport ncmp-datastores:passthrough-running for read use-case (single CM handle, synchronous only)Need more details planning and prioritization for use-case not already supported list in this table : CPS-391Spike: Define and Agree NCMP REST Interface#Datastore,PathsandFormatCombinationsforReadOperationsDelivered in Istanbul

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-615

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-646

3

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPSeparate NCMP-DMI interface from northbound facing 'client' interfaceCommitted

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-645

4

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPRetrieve cm-handles that have a given list modules
Committed

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-644

5

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPAllow separate registration of DMIDataPlugin and DmiModelPlugin
Committed

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-736

6

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPSupport ncmp-datastores:passthrough-running for write use-case (single CM handle, synchronous only)Replace, Delete & Patch use-cases (#2, #3, #4) in :  CPS-391Spike: Define and Agree NCMP REST Interface#Datastore,PathsandFormatCombinationsforWriteOperationsCommitted

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-636
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-637
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-638
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-639
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-640
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-641

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-782
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-777

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-822
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-823
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-824
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-825

7

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPDefine states and state handling for CM handle, e.g. state of model and data sync
Committed (definition only)

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-799

8


CPS-NCMPNCMP should publish notifications for any newly added (once synced) or deleted cm handles. Includes implementation of state handling (state persistence) as far as applicable as defined by #7 above

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-858

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-872
 

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-874
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-875
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-876
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-877
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-878
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-909
9
Partial

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

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

Partial Delivery

(query part might not make Jakarta)

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-677
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-817
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-837
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-731

10

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-Core /
CPS-NCMP
Investigate Horizontal Scaling
Study & Test only

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-786

11


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. 

Partial Delivery

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-821
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-828
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-829
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-821830
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-828832

12

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-NCMPRead access at datastore level

This allows applications to query top-level data nodes without explicitly addressing them. 


Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-745

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-802

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-792

13

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-CoreYANG language extension supportInvestigationCommitted (investigation only)

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-735
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-866

14

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1085

CPS-CoreE2E Slicing Impacts JakartaJ-delivery  wil just include CPS-Core output alignment. But CPS Team will continue to work on cache-related items during Jakarta to be ready for inclusion of that functionality in K to such an extend that in can be used by E2E Sling

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-865
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-819

15

 Move to Kohn

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: There can be some overlap between work items for #5, #6, #11 and #12. Note: This item doesn't include accessing cached data as data sync is not available yet.

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-870

16

 Move to Kohn

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

17

Move to Kohn

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

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-507

18

Move to Kohn

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


19

Move to Kohn

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

20

Move to Kohn

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


21

Move to Kohn

CPS-Core /
CPS-NCMP
Support for HTTPS and authentication


22

Move to Kohn

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


23
TBCDell, support of XML PayloadDell has decided not to pursue this for now

24

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.

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


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


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

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-491

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-765
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-766
Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-767

28
CPS-Core /
CPS-NCMP
Support for multiple roots from different modules in one CM handle/anchor



Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-341

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


30
CPS-Core /
CPS-NCMP
Update YANG schema-set for CM handle without removing and adding itCached data is not in scope. Need to specify orphan handling of YANG modules.

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

32(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 Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
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 Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-392
Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-393

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

34
CPS-NCMPFine-grained cache configuration


35
CPS-Core /
CPS-NCMP
Existing CPS-path based queries across multiple CM handles for cached data


36
CPS-NCMPInvoke YANG modelled action


37
CPS-NCMPInvoke YANG modelled RPC


Temporal DB Requirements

PriorityJakarta Requirement JiraComponent(s)DescriptionNotesJakarta commitmentJira(s)
1

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyREQ-1071

CPS-TEMPORALAdd support for data deletion events in CPS Temporal
Committed

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-470

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-789

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-790

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-826

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-791

Jira Legacy
serverSystem Jira
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-844

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-847

Functionalities


Stories

Expand
titleClosed Stories

Jira Legacy
serverSystem 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 Release" AND status in (Closed, Done) ORDER BY updated DESC
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

...

Expand
titleImprovements & Technical Debt (any release)

Jira Legacy
serverSystem 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
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

...

Expand
titleStories in progress or on backlog

Jira Legacy
serverSystem 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 Release" AND status not in (Closed, Done) ORDER BY status DESC
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

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 able to sync CM Models and Data on any xNF in the network
  • MCMP wil support the query capabilities as CPS-Core and be extend with options similar to RESTConf's 'fields' and 'depth'
  • CPS Temporal aims to complement CPS Core by providing an historical view on CPS data.

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: Istanbul 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. 

NameDescriptionVersion
DockerVM Container18 and above
ODL Yang ToolsYang model and Data Parser6.0.1 
Postgres Docker imageVM container for Postgres13.2-alpine
onap/integration-java11Java Base image8.0.0
SwaggerOpenAPI library2.1.4
SpringFoxOpenAPI library3.0.0
Hibernate typesSupport for Postgres datatype JSONB2.10.0
Spring BootApplication Framework2.5.5
cglib-nodep3pp3.1
commons-lang33pp3.12.0
antlr4-runtimeLanguage parser4.9.2
liquibaseDB Schema (version) management4.4.2
modelmapperModel mapper library2.3.8



  • Gaps

No gaps Identified

  • Known Defects and Issues

See dynamic Jira filter:

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryproject = CPS and type = bug and status = open
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176

  • Risks

No Risks identified, see also Jakarta Risk Table 

  • Resources

Insert excerpt
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: Jakarta 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.

...