Docs: overview, architecture, design, modeling 54/118854/7
authorRuslan Kashapov <ruslan.kashapov@pantheon.tech>
Tue, 2 Mar 2021 14:48:41 +0000 (16:48 +0200)
committerRuslan Kashapov <ruslan.kashapov@pantheon.tech>
Tue, 16 Mar 2021 15:26:10 +0000 (17:26 +0200)
Issue-ID: CPS-268
Change-Id: I31480a9a6186af0ddedae4f0eca06a744a2e2d64
Signed-off-by: Ruslan Kashapov <ruslan.kashapov@pantheon.tech>
.gitignore
docs/_static/cps-modeling-concepts.png [new file with mode: 0644]
docs/_static/cps-r8-arch-diagram.png [new file with mode: 0644]
docs/architecture.rst
docs/design.rst [moved from docs/offeredapis.rst with 80% similarity]
docs/index.rst
docs/modeling.rst [new file with mode: 0644]
docs/overview.rst [new file with mode: 0644]

index f197492..8fff710 100755 (executable)
@@ -24,4 +24,7 @@ tmp/
 
 /.tox
 /_build/*
-/__pycache__/*
\ No newline at end of file
+/__pycache__/*
+
+/docs/docs/
+/docs/.vscode/
\ No newline at end of file
diff --git a/docs/_static/cps-modeling-concepts.png b/docs/_static/cps-modeling-concepts.png
new file mode 100644 (file)
index 0000000..d6fd9f0
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 (file)
index 0000000..f5a90a6
Binary files /dev/null and b/docs/_static/cps-r8-arch-diagram.png differ
index c613e4f..51acf66 100644 (file)
@@ -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 <https://wiki.onap.org/display/DW/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`.
similarity index 80%
rename from docs/offeredapis.rst
rename to docs/design.rst
index 1f11905..4f1bf1e 100755 (executable)
@@ -2,32 +2,30 @@
 .. http://creativecommons.org/licenses/by/4.0
 
 .. DO NOT CHANGE THIS LABEL FOR RELEASE NOTES - EVEN THOUGH IT GIVES A WARNING
-.. _offeredapis:
+.. _design:
 
 
-CPS Offered APIs
-================
+CPS Design
+##########
+
+.. toctree::
+   :maxdepth: 1
+
+Offered APIs
+============
 
 CPS supports the public APIs listed in the link below:
 
 :download:`OpenApi Specification <api/swagger/openapi.yml>`
 
-.. 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 :
+Specification can be accessed using following URI:
 
 .. code-block:: bash
 
   “http://<hostname>:<port>/v3/api-docs?group=cps-docket”
-
-Contact Information
--------------------
-
-onap-discuss@lists.onap.org
\ No newline at end of file
index a7c1b93..f389a67 100755 (executable)
@@ -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 (file)
index 0000000..74ee8ec
--- /dev/null
@@ -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/overview.rst b/docs/overview.rst
new file mode 100644 (file)
index 0000000..776e179
--- /dev/null
@@ -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 <https://wiki.onap.org/display/DW/Configuration+Persistence+Service+Project>`_
+
+Contact Information
+-------------------
+
+onap-discuss@lists.onap.org