Overview
Project Name | Enter the name of the project |
---|---|
Target Release Name | Istanbul |
Project Lifecycle State | Incubation |
Participating Company | Bell Canada, Ericsson, IBM, Highstreet, Pantheon |
Scope
What is this release trying to address?
Further integrate CPS into ONAP architecture through additional components and interfaces such as
- Network CM Proxy NCMP, moving from MVP to integrated component using SDN-C, DMaap and A&AI and an agreed new REST interface
- ONAP Data Model Inventory (DMI) Plugin to register supported CM handles and delegate data acces to the xNFS using ODL interface in SDN-C
- Model and Data Sync for nodes in DMI Plugin Inventory
- Storing and querying Temporal data
Requirements
- Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
Minimum Viable Product
- Ability to add xNF (initial) inventory using 'side-door' interface
- Read Operation support for both cached data in CPS and xNF data using 'datastores' concept
- Write operation support for datastore ncmp-datastores:running
- Model and Data Sync for (manually added) Simulator based xNF
- Temporal service is able to store basic data updated events received from Core and is also able to respond to basic query requests.
Functionalities
Epics
Stories
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 same query capabilities as CPS-Core and be extend with options similar to RESTConf's 'fields' and 'depth'
- Temporal DB?
Release Deliverables
Indicate the outcome (Executable, Source Code, Library, API description, Tool, Documentation, Release Note, etc) of this release.
Deliverable Name | Deliverable Description |
---|---|
onap/cps-and-ncmp | Container running CPS and NCMP |
onap/cps-temporal | Container running CPS Temporal |
docs.onap.org | Documentation for R9 (incl. offered APIs release note) |
Sub-Components
- CPS-Core
- cps-service
- cps-rest
- cps-ri (reference implementation)
- NCMP
- cps-ncmp-service
- cps-ncmp-rest
- Temporal DB
- DMI-Plugin
Architecture
High level architecture diagram
CPS is a new shared service in the ONAP Architecture:
For more detailed component description see ARC Configuration Persistence Service (CPS) Component Description - Istanbul-R9#6.SystemDeploymentArchitecture
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 Name | API Description | API Definition Date | API Delivery date | API Definition link (i.e.swagger) |
---|---|---|---|---|
CPS-E-01 | CPS Model LifeCycle CPS Data Write CPS Data Read | Swagger Sources (openapi.yaml) | ||
CPS-E-05 | xNF Data Access | Swagger Sources (openapi.yaml) | ||
CPS-E-06 | Temporal 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.
Name | Description | Version |
---|---|---|
Docker | VM Container | 18 and above |
ODL Yang Tools | Yang model and Data Parser | 5.0.6 |
Postgres Docker image | VM container for Postgres | 13.2-alpine |
onap/integration-java11 | Java Base image | 8.0.0 |
Jetty | Application server | 9.4.41 |
Swagger | OpenAPI library | 2.1.4 |
SpringFox | OpenAPI library | 3.0.0 |
Hibernate types | Support for Postgres datatype JSONB | 2.10.0 |
Spring Boot | Application Framework | 2.5.0 |
cglib-nodep | 3pp | 3.1 |
commons-lang3 | 3pp | 3.11 |
antlr4-runtime | Language parser | 4.9.2 |
liquibase | DB Schema (version) management | 4.3.1 |
modelmapper | Model mapper library | 2.3.8 |
MapStruct | Model Mapper library (alternative) | 1.4.2.Final |
Testing and Integration Plans
- CPS has high level of built jUnit test (CPS-Core+NCMP >95%, Temporal DB >75% ) which is enforced by our maven build scripts
- CPS has built in Persistence Layer test ie. test that integrate with real DB covering all use cases and are part of WoW
- CIST test are part of CPS -Repo, see https://gerrit.onap.org/r/gitweb?p=cps.git;a=tree;f=csit;h=8505b66089f62b6431c1091edf820cbdbf4363d4;hb=HEAD
And executed automatically through the cps-review-verification-maven-master CI Job - E2E Integration with ONAP components introduced in I-release (like SDN-C, A&AI) will be added/tracked by
Gaps
No gaps Identified
Known Defects and Issues
See dynamic Jira filter:
Risks
No Risks identified, see also Istanbul Risks
Resources
Name | Code Contributor | Committer | Organization | Time Zones | CPS Daily Scrums* | |||
---|---|---|---|---|---|---|---|---|
Winter | Summer (DST) | Focus Team 1 | Focus Team 2 | DT Sub Team | ||||
Toine Siebelink (PTL) | Yes | Yes | Ericsson | GMT/UTC | IST/UTC+1 | X (SM) |
|
|
kieran mccarthy(stakeholder) | No | No | Ericsson | CET/UTC+1 | CEST/UTC+2 |
|
|
|
Peter Turcsanyi (stakeholder) | No | No | Ericsson | CET/UTC+1 | CEST/UTC+2 |
|
|
|
Csaba Kocsis (stakeholder) | No | No | Ericsson | CET/UTC+1 | CEST/UTC+2 |
|
|
|
Tony Finnerty (architect) | No | No | Ericsson | GMT/UTC | IST/UTC+1 |
|
|
|
No | No | Ericsson | GMT/UTC | IST/UTC+1 |
|
|
| |
Yes | No | Tech Mahindra | IST/UTC+5:30 | IST/UTC+5:30 |
|
| X | |
Yes | Yes | Ericsson | GMT/UTC | IST/UTC+1 |
| X |
| |
Yes | No | Ericsson | GMT/UTC | IST/UTC+1 |
| X |
| |
Yes | No | Ericsson | GMT/UTC | IST/UTC+1 | X |
|
| |
Yes | Yes | Ericsson | GMT/UTC | IST/UTC+1 |
| X (SM) |
| |
Yes | No | Ericsson | CET/UTC+1 | CEST/UTC+2 | X |
|
| |
Yes | Yes | Ericsson | GMT/UTC | IST/UTC+1 |
| X | X (SM) | |
Yes | No | Tech Mahindra | IST/UTC+5:30 | IST/UTC+5:30 |
|
| X | |
Yes | No | Tech Mahindra | IST/UTC+5:30 | IST/UTC+5:30 |
|
| X | |
Yes | No | Ericsson | GMT/UTC | IST/UTC+1 |
| X |
| |
Yes | Yes | Ericsson | GMT/UTC | IST/UTC+1 | X |
|
|
*The scrum attendance for each member is the current 'typical' attendance. Each team member can potentially attend any Scrum as needed
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: Istanbul 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.