From 55dc654964942aa67c48f09b0ba56059be8e923b Mon Sep 17 00:00:00 2001 From: Ruslan Kashapov Date: Tue, 2 Mar 2021 16:48:41 +0200 Subject: Docs: overview, architecture, design, modeling Issue-ID: CPS-268 Change-Id: I31480a9a6186af0ddedae4f0eca06a744a2e2d64 Signed-off-by: Ruslan Kashapov --- docs/_static/cps-modeling-concepts.png | Bin 0 -> 53884 bytes docs/_static/cps-r8-arch-diagram.png | Bin 0 -> 62879 bytes docs/architecture.rst | 65 +++++++++++++++++++++++++++++++-- docs/design.rst | 31 ++++++++++++++++ docs/index.rst | 14 +++++-- docs/modeling.rst | 47 ++++++++++++++++++++++++ docs/offeredapis.rst | 33 ----------------- docs/overview.rst | 38 +++++++++++++++++++ 8 files changed, 188 insertions(+), 40 deletions(-) create mode 100644 docs/_static/cps-modeling-concepts.png create mode 100644 docs/_static/cps-r8-arch-diagram.png create mode 100755 docs/design.rst create mode 100644 docs/modeling.rst delete mode 100755 docs/offeredapis.rst create mode 100644 docs/overview.rst (limited to 'docs') diff --git a/docs/_static/cps-modeling-concepts.png b/docs/_static/cps-modeling-concepts.png new file mode 100644 index 0000000000..d6fd9f089e Binary files /dev/null and b/docs/_static/cps-modeling-concepts.png differ diff --git a/docs/_static/cps-r8-arch-diagram.png b/docs/_static/cps-r8-arch-diagram.png new file mode 100644 index 0000000000..f5a90a6ea1 Binary files /dev/null and b/docs/_static/cps-r8-arch-diagram.png differ diff --git a/docs/architecture.rst b/docs/architecture.rst index c613e4ff95..51acf66f0e 100644 --- a/docs/architecture.rst +++ b/docs/architecture.rst @@ -1,5 +1,64 @@ -.. Copyright (C) 2021 Nordix Foundation +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2021 Nordix Foundation, Pantheon.tech .. _architecture: -CPS in ONAP Architecture --------------------------- \ No newline at end of file +CPS Architecture +################ + +.. toctree:: + :maxdepth: 1 + + +High Level Component Definition and Architectural Relationships +=============================================================== + +The Configuration Persistence Service (CPS) provides storage for run-time configuration and operational +parameters that need to be used by ONAP. + +In this release the CPS is a stand-alone component. Project page describing eventual scope and ambition is here: +`Configuration Persistence Service Project `_ + +This page reflects the state for Honolulu-R8 release. + +.. image:: _static/cps-r8-arch-diagram.png + +API definitions +=============== + +Configuration Persistence Service provides following interfaces. + +.. list-table:: + :header-rows: 1 + + * - Interface name + - Interface definition + - Interface capabilities + - Protocol + * - CPS-E-01 + - Administrative Data Management + - - create/delete dataspace + - create/delete schema set + - create/delete anchor + - REST + * - CPS-E-02 + - Generic Data Access + - - create data node + - read data node by xpath with or without descendants + - update data node by xpath with or without descendants + - REST + * - CPS-E-03 + - Generic Data Search + - - query data nodes by xpath prefix and attribute value + - REST + * - CPS-E-04 + - Change Notification + - *Not available in Honolulu-R8* + - *N/A* + * - CPS-E-05 + - xNF Data Access + - - read xNF data + - query xNF data + - REST + +The CPS Basic Concepts are described in :doc:`modeling`. diff --git a/docs/design.rst b/docs/design.rst new file mode 100755 index 0000000000..4f1bf1ee13 --- /dev/null +++ b/docs/design.rst @@ -0,0 +1,31 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 + +.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING +.. _design: + + +CPS Design +########## + +.. toctree:: + :maxdepth: 1 + +Offered APIs +============ + +CPS supports the public APIs listed in the link below: + +:download:`OpenApi Specification ` + +Exposed API +----------- + +The standard for API definition in the RESTful API world is the OpenAPI Specification (OAS). +The OAS 3, which is based on the original "Swagger Specification", is being widely used in API developments. + +Specification can be accessed using following URI: + +.. code-block:: bash + + “http://:/v3/api-docs?group=cps-docket” diff --git a/docs/index.rst b/docs/index.rst index a7c1b93df6..f389a6768c 100755 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,17 +1,23 @@ .. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 + .. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING .. _master_index: .. THIS IS USED INTERNALLY IN CPS ONLY .. _cps-framework-doc: -CPS Documentation Repository ------------------------------ +CPS Documentation for the Honolulu-R8 Release +--------------------------------------------- .. toctree:: :maxdepth: 1 - architecure.rst - offeredapis.rst + overview.rst + architecture.rst + design.rst + modeling.rst + deployment.rst + user-guide.rst release-notes.rst diff --git a/docs/modeling.rst b/docs/modeling.rst new file mode 100644 index 0000000000..74ee8ec86a --- /dev/null +++ b/docs/modeling.rst @@ -0,0 +1,47 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2021 Pantheon.tech +.. _modeling: + +CPS Modeling +############ + +.. toctree:: + :maxdepth: 1 + +Basic Concepts +============== + +.. image:: _static/cps-modeling-concepts.png + :alt: Basic entities relationship + +Administrative entities + +- **Dataspace** is a primary logical separation of data. + + Any application can define its own dataspace to store the model(s) and data it owns. + Dataspace is uniquely identified by it's name. + +- **Schema Set** describes a data model(s). + + Schema Set holds reference(s) to single or multiple YANG modules. Schema Set belongs to dataspace + and uniquely identified by its name (within its own dataspace). Same YANG resources (source files) can be + referenced by multiple schema sets from different dataspaces. + +- **Anchor** identifies the unique data set (data record) within a dataspace + + Anchor always references a schema set within same dataspace which describes a data model of associated data. + Multiple anchors may reference same schema set. Anchor is uniquely identified by its name (within own dataspace). + +Data + +- **Data Node** represents a data fragment. + + Each data node can have zero or more descendants and together they form a data instance tree. + The data node tree belongs to an anchor. + + Data node is representing a data fragment described in a YANG model as a *container* and/or a *list*. + The data described as a *leaf* and/or a *leaf-list* are stored within a parent data node. + + The data node position within a tree is uniquely identified by the node's unique **xpath** which can be used + for partial data query. diff --git a/docs/offeredapis.rst b/docs/offeredapis.rst deleted file mode 100755 index 1f11905a4e..0000000000 --- a/docs/offeredapis.rst +++ /dev/null @@ -1,33 +0,0 @@ -.. This work is licensed under a Creative Commons Attribution 4.0 International License. -.. http://creativecommons.org/licenses/by/4.0 - -.. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING -.. _offeredapis: - - -CPS Offered APIs -================ - -CPS supports the public APIs listed in the link below: - -:download:`OpenApi Specification ` - -.. toctree:: - :maxdepth: 1 - -Exposed API ------------ - -The standard for API definition in the RESTful API world is the OpenAPI Specification (OAS). -The OAS 3, which is based on the original "Swagger Specification", is being widely used in API developments. - -Specification can be accesed locally at : - -.. code-block:: bash - - “http://:/v3/api-docs?group=cps-docket” - -Contact Information -------------------- - -onap-discuss@lists.onap.org \ No newline at end of file diff --git a/docs/overview.rst b/docs/overview.rst new file mode 100644 index 0000000000..776e179482 --- /dev/null +++ b/docs/overview.rst @@ -0,0 +1,38 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2021 Pantheon.tech +.. _overview: + +CPS Overview +============ + +The Configuration Persistence Service (CPS) is a platform component that is designed to serve as a +data repository for runtime data that needs persistence. + +Types of data that is stored: + +- **Configuration Parameters** + + These are configuration parameters that are used by xNFs during installation & commissioning. Configuration + parameters are typically used before the xNF has been brought up or is operational. For example, a 5G Network + configuration parameter for a PNFs that sets the mechanical tilt which is a configuration setting upon + installation. + +- **Operational Parameters** + + This operational information could be either an actual state or configuration of a network service or device. + These are parameters that are derived, discovered, computed that are used by xNFs during run time AFTER the + xNF becomes operational i.e. AFTER it has "booted up", been installed or configured. For example, in 5G Network, + 5G PNFs may need to adjust a tower electrical antenna tilt. These operational parameters are Exo-inventory + information, meaning it is information that doesn't belong in A&AI. In principle, some parameters might be both + configuration and operational parameters depending on how they are used. + +CPS Project +----------- + +Wiki: `Configuration Persistence Service Project `_ + +Contact Information +------------------- + +onap-discuss@lists.onap.org -- cgit 1.2.3-korg