Requirements
Prioritylegend
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) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 |
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 |
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 |
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 |
| CPS-Core Feature Enhancement for Oslo Release: Delta Feature | NOTE: Reopened |
| jqlQuery | "
|
|
Expand | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
Expand |
---|
ncmpInventory/v1/ch/searches should include a cpsPtah filter so more advanced queries like for module-set-tags can be executed. The same functionality is already exposed on /ncmp/v1/ch/searches |
Expand |
---|
Bug discovered in legacy implementation of same functionality Open Issue: ncmpInventory/v1/ch/searches just return IDs ! |
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-2436 CPS-NCMP
Ericsson Team
Q4 24
NCMP shall support retaining the order of CM Change Notifications
Events assigned to the same partition will be consumed and processed in sequence, ensuring the correct order.
Key will mandatorily be populated from
NE CPS requesting Kafka config from NE
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-2425 CPS-NCMP
Ericsson Team 2
Q4 24
Request to update Event Schemas
Review NCMP current schema format and agree new schema forma
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)
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-2249 CPS-NCMP
Ericsson Team 1
Q1 25
New Generic interface to handle policy interface
Ability to create HTTP 409 conflict response on NCMP's interface
Write operations are intercepted and validated using the new external service -
Name of this new interface - PolicyExecution.
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Expand | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
Expand |
---|
NCMP to update CM Data Notification Event Schema to comply with new 3PP standard |
Expand |
---|
Event 13a and 13b listed here CPS Data Notifications Overview - Developer Wiki - Confluence (onap.org) shall be updated with new schema model with yang data json encoding |
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-1964 CPS-NCMP
Ericsson Team 1 & 2
Q4 24 (EST) Q1 25 (ETH)
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!
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 Kafka topic
Synchronous
Add as part of this epic
Status
Result
No new epic for write req.
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-1966 CPS-NCMP
Ericsson Team 2
Q3 24'
CPS/NCMP delivery process
Moved up on Not discussed for long time but need new attention so these problems don't continue while building DCM
Alignment of CPS/NCMP build artifact versions with EIC
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||||
---|---|---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
CPS-NCMP
Ericsson Team 1
Mid Q2 24'
Adding limit to legacy batch (bulk) interface
proposed hardcoded limit of 50 cm handles
Csaba Kocsis inform CPS to use 200 as new limit and ESH stack is now enforcing this.
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
CPS-NCMP
Ericsson Team 1
Q3 24
Enable Open Telemetry tracing
Configuration impacts only. Ericsson has delivered the required configuration files
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
CPS-NCMP
Ericsson Team 1
Q3 24
Replace RestTemplate with WebClient
Merging
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Prometheus metrics http_client_requests_* metrics are not available for every endpoints in CPS NCMP
Add state tags to cps.ncmp.lcm.events.publish metrics
Jira Legacy | ||||||||
---|---|---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-2009 CPS-NCMP
Ericsson Team 2
Q4 24
Update remaining existing/legacy NCMP APIs to support alternateId (FDN)
Update existing/legacy NCMP APIs to support FDN / alternateId
Depends on
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Now includes
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Agreed with stakeholders on These open issues are not a blocker, we would leave LCM event as Legacy event and proceed with
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Expand | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
Series of performance test
Expand |
---|
Continuous work on CPS-NCMP performance measurement including
|
https://lf-onap.atlassian.net/issues/?jql=parent%20%3D%20CPS-2373
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
CPS-NCMP
Ericsson Team 2
Q4 24 (EST) Q1 25 (ESH)
CM-handle search that returns 200k Cells (50k CM Handles)
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-2010 CPS-NCMP
CPS-NMCP
Q1 25
Async datajob Read to S3to 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
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-1992 CPS-NCMP
TBC
TBC
Q1 25
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
Async datajob Read (Write output to Kafka)
TBC: Stakeholders needs to check validity of this requirement.
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
|
CPS-NCMP
Ericsson Team
Q2 25
Kolawole Adebisi-Adeolokun to check of this is a duplicate of what Seán Beirne is working on #14
Update existing single sync cmhandle APIs to support alternative id (containing FDNs)
Async datajob Read (Write output to Kafka)
TBC: Stakeholders needs to check validity of this requirement.
'
Forwarding CM Data Notifications to Topic in Subscription
Topic used for forwarding notification should be based on the client-id which can be extracted from the subscription-id - Yet to be clarified
Client application shall ONLY receive notification they subscribed on
Client application shall not see notification they did not subscribed on
Interdependent on -
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
CPS-NCMP
Ericsson Team
Q2 25'
Forwarding CM Data Notifications to Topic in Subscription
Topic used for forwarding notification should be based on the client-id which can be extracted from the subscription-id - Yet to be clarified
Client application shall ONLY receive notification they subscribed on
Client application shall not see notification they did not subscribed on
Interdependent on -
Jira Legacy | ||
---|---|---|
|
Dropdown from #7 due to the whole CM Data Notification Subscription is estimated for Q2 25 by // therefore deprioritized
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
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
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-
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
1915 CPS-NCMP
Ericsson Team
Q2 25'
CM Subscription with DME interface
TBD
Ericsson Team 2
TBD
Q3 25
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.
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-19151781 CPS-NCMP
TBD
Ericsson Team 2
TBD
Q3 25
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.
TBD
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.
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-17811965 CPS-NCMPNMCP
TBDTBC
TBD
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.
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-1965 CPS-NMCP
TBC
TBC
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)
TBC
CPS-NMCP
TBC
TBC
Event Digest
Additional field to help clients filter CM AVC Events
(S)
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,
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
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-1796 CPS-CORE & NCMP
TBC
TBC
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
Jira Legacy server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key CPS-1704 CPS-NMCP
TBC
TBC
Refactor legacy NCMP ASync Response Events to use Cloud Events format
(M) TBC
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Access control for topics which are created by NCMP.
Spike needs to be conducted. Dependent of TBAC implementations.
Invoke YANG modelled sync action
Invoke YANG modelled action
Invoke YANG modelled RPC, Specification required. Rebbot/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.
can datajob cover this ?, currently no support for 'actions'. Action name at the end of resourceid. split ticket into, action with and without responses.
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.
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.
TBC
Support ncmp-datastores:running
for reading data (single CM handle, synchronous only)
Read from operations.
(S) - Forward only. No validation or data enhancements (add prefixis)
TBC
Support ncmp-datastores:running
for writing data (single CM handle, synchronous only)
(S) As per #18
Support relationships for 'Instance Identifier'
(M) - Not sure. Scope not known yet.
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Fine-grained cache configuration
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.
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
TBC
Send notifications on write operation in ncmp-datastores:running
for (single CM handle, synchronous only)
schema-set update for CM handle with cached data present
Scope: Upgrade of model that is cached? Lee Anjella to confirm.
Invoke YANG modelled RPC
Specification required. Rebbot/Reset type of actions on node.
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
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
Jira Legacy | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Fetch a list of cmhandles along with their private properties as response from NCMP.
Technical Debt
| 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) | ||||||||||||||||||||||||
26 |
| Event Digest | Additional field to help clients filter CM AVC Events | |||||||||||||||||||||||
27 | 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
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, Liquibase is used in CPS to manage data(upgrades) - Now available.
|
| ||||||||||||||||||||||
28 |
| Spike for documenting Kafka interfaces using AsyncAPI | - Documentation Generation - Code Generation (contract first, stubs) | |||||||||||||||||||||||
29 |
| Refactor legacy NCMP ASync Response Events to use Cloud Events format | (M) TBC |
| ||||||||||||||||||||||
30 | Access control for topics which are created by NCMP. | Spike needs to be conducted. Dependent of TBAC implementations. | ||||||||||||||||||||||||
31 | Invoke YANG modelled sync action | Invoke YANG modelled action Invoke YANG modelled RPC, Specification required. Rebbot/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.
can datajob cover this ?, currently no support for 'actions'. Action name at the end of resourceid. split ticket into, action with and without responses. | |||||||||||||||||||||||
32 | 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? KMC : Do we support restconf like queries or xpath only? (L) . | ||||||||||||||||||||||||
33 | Enhanced query support (scope) | Currently the passthrough has an 'fields' parameter to do a scoped query. KMC : Do we support restconf like queries or xpath only? (L) | ||||||||||||||||||||||||
34 | TBC | Support | 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. | |||||||||||||||||||||||
35 | TBC | Support | (S) As per #18 | |||||||||||||||||||||||
36 | TBC | Support relationships for 'Instance Identifier' | Should be possible to identify a cmhandle using multiple instance identifiers. |
| ||||||||||||||||||||||
37 | Fine-grained cache configuration | |||||||||||||||||||||||||
38 | Support for HTTPS and authentication
| Validation required whether this is still needed. |
|
User Stories
title | Open User Stories for 'Oslo Release' |
---|
| |||||||
39 | TBC | Send notifications on write operation in | |||||
40 | schema-set update for CM handle with cached data present | Need to address case with incompatible model changes. | |||||
41 | Invoke YANG modelled RPC | Specification required. Rebbot/Reset type of actions on node. | |||||
42 |
|
title | Closed Stories |
---|
| 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 |
|
|
|
|
|
| ||||||||||||
43 |
| Fetch a list of cmhandles along with their private properties as response from NCMP. |
Technical Debt
User Stories
Open User Stories for Oslo Release
User Stories Closed in Oslo Release
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.