CPS R16 Release Planning

image-20241014-122321.png

Louvre Museum (Credit: Wikipedia)

 

Requirements

legend

Preliminary

Priority Agreed

In Progress

Pending Integration

Paused/Blocked

Completed

De-scoped

CPS-CORE / CPS-NCMP Requirements

Epic/Component/Owner/Team/Target

Description

Notes

Jira(s)

Epic/Component/Owner/Team/Target

Description

Notes

Jira(s)

1

CPS-Core Feature Enhancement for Oslo Release: Delta Feature

NOTE: Reopened

 

2

NCMP shall support retaining the order of CM Change Notifications

  1. Events assigned to the same partition will be consumed and processed in sequence, ensuring the correct order.

  2. Key will mandatorily be populated from

  3. NE CPS requesting Kafka config from NE

 

3

Request to update Event Schemas

  1. Review NCMP current schema format and agree new schema forma

  2. Lcm ( Lifecycle Management Events) changes to cloud [CPS-2058] (Blocked until June waiting for stakeholders) Update LCM event from Legacy to cloud-event and add Alternate ID - Jira (atlassian.net)

 

4

New Generic interface to handle policy interface

  1. Ability to create HTTP 409 conflict response on NCMP's interface

  2. Write operations are intercepted and validated using the new external service -

  3. Name of this new interface - PolicyExecution.

5

Support for Async datajobs

Not just for reading specific fdn, but rather QUERY Group of FDN , it's just a broadcast to every DMI plugin. The response should mimic sending a broadcast to 2 or more CM Handles 

CPS Team will only do java interface. REST Interface is done in DCM

 

NEW interface aligning with 3GPP i.e FDN instead of CM-HandleIds

(Read use case can re-use existing dataOperationz impl. after mapping FDNs to CMHandleIds for input and back for output!)

Read, Create, Update, Delete and Action support. I.e for passthrough only
Note: Q(uery) is  SUBNETWORK-wide read and should be done separately using a different endpoint for clarity and separation!

  1. NCMP to introduce a qualifier to be used along with the DMI plugin so NCMP can break the request with multiple cmhandle into batches based on the DMI plugin and the Qualifier (where qualifier should be EMS name / id).

  2. NCMP shall create one or multiple EMS job ids depending on FDNs requested

  3. NCMP shall provide an interface to get status of an EMS job id (forward request)

  4. NCMP shall provide an interface to get results of an EMS job id

  5. NCMP shall send the results to Kafka topic

  6. Synchronous

 

 

Jun 26, 2024 

Add as part of this epic

  • Status

  • Result

No new epic for write req.

6

Update remaining existing/legacy NCMP APIs to support alternateId (FDN)

Update existing/legacy NCMP APIs to support FDN / alternateId

Depends on CPS-1704: Separation of Headers from Event Payload for Legacy EventsOpen (which now has a lower priority)

Now includes CPS-2058: (Blocked until June waiting for stakeholders) Update LCM event from Legacy to cloud-event and add Alternate IDOpen

 

Agreed with stakeholders on Apr 25, 2024  These open issues are not a blocker, we would leave LCM event as Legacy event and proceed with  CPS-2009: Update All legacy NCMP APIs Interfaces to support alternateId (FDN)In Progress

7

https://lf-onap.atlassian.net/browse/CPS-2169

  • CPS-NCMP

  • @Gerard Nugent

  • Ericsson Team 2

  • Q4 24 (EST) Q1 25 (ESH)

CM-handle search that returns 200k Cells (50k CM Handles)

 

8

Async datajob Read to S3 (Minio impl)
Requirement not yet clarified

NCMP to introduce a qualifier to be used along with the DMI plugin so NCMP can break the request with multiple cmhandle into batches based on the DMI plugin and the Qualifier (where qualifier should be EMS name / id).

  • NCMP shall create one or multiple EMS job ids depending on FDNs requested

  • NCMP shall provide an interface to get status of an EMS job id (forward request)

  • NCMP shall provide an interface to get results of an EMS job id

  • NCMP shall send the results to S3

9

NCMP to support the 3GPP ProvMnS CRUD interfaces. NCMP to Support new 3GPP sync single FDN request

Implement new NCMP CRUDAQ sync interface aligned with 3GPP API (Read and write use cases) - Wrapper on existing/legacy API

10

https://lf-onap.atlassian.net/browse/CPS-2166

  • CPS-NCMP

  • Ericsson Team 

  • Q2 25'

Forwarding CM Data Notifications to Topic in Subscription.

250 million CM notifications per day that need to be processed and distributed to 100-200 different topics

  • Topic used for forwarding notification should be based on the client-id which can be extracted from the subscription-id - Yet to be clarified Apr 3, 2024 

  • Client application shall ONLY receive notification they subscribed on

  • Client application shall not see notification they did not subscribed on

Interdependent on - https://lf-onap.atlassian.net/browse/CPS-1812

Dropdown from #7 due to the whole CM Data Notification Subscription is estimated for Q2 25 by //  therefore deprioritized

11

Invoke YANG modelled sync action

Synch Actions

 

 

12

https://lf-onap.atlassian.net/browse/CPS-2233

  • CPS-NCMP

  • Ericsson Team 

  • Q2 25'

CM Subscription with DME interface

 

  • This new epic is driven by the possible changes from Event based subscription to HTTP rest interface and potential changes to the schema.

  • The whole CM Data Notification Subscription is estimated for Q2 25 by //  therefore deprioritized

  • Doc still in study (2/3)

  • CPS to study the document when study is approved

 

Newly Added

13

TBAC - Access Control for resources to ensure that operators can restrict access control to only those users (human/machines) that are authorized to execute CRUD operations on those resources. 

 

TBAC Study still ongoing, schedule an internal meeting to go through study doc, until sidecar is well define and implemented cps can't do nothing. Sidecar should specify the interfaces.

 

 

14

CM data subscriptions from application to DMI [Part 2].

For all cmhandle (general)

This epic was created to take on additional scope which got added to CPS-1616

 

15

AVC Subscription, advance filter. Part 2 of cmhandles

It includes creating subscription with patternmatch cmhandles. 

Filter on 'Type' instead of list of CM Handle IDs → 'Type' could be defined as the yang module set containing a specific module (name and version)

 

16
  • TBC

  • CPS-NMCP

  • TBC

  • TBC

Event Digest

Additional field to help clients filter CM AVC Events
(S)

 

 

17

TBC

Support NCMP-CPS upgrade

Currently only custom upgrade is supported. (upon request)

Requirement: It shall be possible to upgrade NCMP-CPS from release N-1 to N (without requiring manual intervention/workarounds). N is defined as any release requested by ESH

  • Note. Need to agree version strategy: use current ONAP x.y.z. numbering. Ericsson to communicate when a version is to be 'delivered' and 'y' increased

Technical Debt to be addressed: Liquibase is used in CPS to manage data(upgrades) in CPS

Study: Resolve technical debt (mixed data). NCMP Data upgrade. CPS Core need to support model upgrade so that NCMP can use it,

 

Nov 8, 2023 Liquibase is used in CPS to manage data(upgrades) - Now available.

  • Still need to discuss the 'backward incompatible' → What interfaces should NOT be impacted Kieran mention NBI - northbound interfaces

  • Propose workshop, Spike needed from CPS

 

(XL) - Scope needs to be defined. Risk is scope not identified, efforts might increase.

 

https://lf-onap.atlassian.net/browse/CPS-1345

18

Spike for documenting Kafka interfaces using AsyncAPI

  • Documentation Generation

  • Interface Naming

  • Cloud Events specifics asyncapi-cloud-events - Roll out for legacy events

  • Code Generation (contract first, stubs)


Add label of techdebt @Kolawole Adebisi-Adeolokun not an immediate req for

 

19

Refactor legacy NCMP ASync Response Events to use Cloud Events format

(M) TBC 

20

 

Access control for topics which are created by NCMP.

Spike needs to be conducted. Dependent of TBAC implementations.

 

21

Invoke YANG modelled sync action

Invoke YANG modelled action

Invoke YANG modelled RPC, Specification required. Reboot/Reset type of actions on node. Include to the sync one

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 sync request.  Is this dependent on CPS-1127  - see spin-off user stories table below this on.

KMC : Can we deprioritize - this can be run against passthrough-operational for now.  Just have to agree on the API / URL for the action to progress at this stage so that the passthrough-operational form is aligned with final operational form.

(S) - for passthrough. 

*Spec out before Sept'23. No implementation. 

 

Nov 9, 2023 

can datajob cover this ?, currently no support for 'actions'. Action name at the end of resourceid. split ticket into, action with and without responses. 

 

22

 

Enhanced query support (fields)

Currently the passthrough has an 'fields' 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),
         

KMC : Do we support restconf like queries or xpath only?

(L) .

*Spec out before Sept'23. No implementation. 

 

 

23

 

Enhanced query support (scope)

Currently the passthrough has an 'fields' parameter to do a scoped query.  
              scope=ericsson-enm-comtop:ManagedElement/ericsson-enm-gnbcucp:GNBCUCPFunction/
               EndpointResource/LocalSctpEndpoint/attributes(interfaceUsed==X2))

KMC : Do we support restconf like queries or xpath only?

(L)

*Spec out before Sept'23. No implementation. 

 

24

TBC

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

Read from operations.

(S) - Forward only.  No validation or data enhancements (add prefixis)

 

25

TBC

Support ncmp-datastores:running for writing data (single CM handle, synchronous only)

(S)  As per #18

 

26

TBC

Support relationships for 'Instance Identifier'

Should be possible to identify a cmhandle using multiple instance identifiers.
(M) - Not sure. Scope not known yet. 

https://lf-onap.atlassian.net/browse/CPS-1180

27

 

Fine-grained cache configuration

 

 

28

 

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 

Validation required whether this is still needed. 

https://lf-onap.atlassian.net/browse/CPS-703

29

TBC

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

 

 

30

 

schema-set update for CM handle with cached data present

Need to address case with incompatible model changes.
Scope: Upgrade of model that is cached?  Lee Anjella to confirm. 

 

31

 

Invoke YANG modelled RPC

Specification required. Rebbot/Reset type of actions on node. 

 

32

https://lf-onap.atlassian.net/browse/CPS-1843

DMI Audit for DMI restarts

After restart, trustlevel loses all data. TrustLevel is not currently in use now, however this becomes an issues after TrustLevel restart. The states goes to 'NONE' after TrustLevel restart

 

TBC

33

https://lf-onap.atlassian.net/browse/CPS-1872

Fetch a list of cmhandles along with their private properties as response from NCMP.

 

 

Technical Debt

 

https://lf-onap.atlassian.net/issues/?jql=parent%20%3D%20CPS-245%20AND%20(resolution%20NOT%20IN%20(Done%2C%20Duplicate%2C%20%22Won%27t%20Do%22%2C%22Not%20a%20Bug%22%2C%20%22Not%20Done%22)%20OR%20resolution%20%3D%20EMPTY)%20%20ORDER%20BY%20priority

User Stories

Open User Stories for Paris Release

https://lf-onap.atlassian.net/browse/CPS-2500

User Stories Closed in Paris Release

https://lf-onap.atlassian.net/issues/?jql=project%20%3D%20CPS%20AND%20type%20%3D%20Story%20AND%20fixVersion%20%3D%20%22Paris%20Release%22%20AND%20status%20in%20(Closed%2C%20Done%2C%20Delivered%2C%20%22Not%20a%20bug%22)%20ORDER%20BY%20updated%20DESC%20

Other Information

Platform Maturity

See Best Practices Badging Status Dashboard by @Tony Hansen

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.