diff options
Diffstat (limited to 'docs')
-rw-r--r-- | docs/_static/cps-r9-ncmp-dmi-plugin-interface-diagram.png | bin | 0 -> 24561 bytes | |||
-rw-r--r-- | docs/architecture.rst | 39 | ||||
-rw-r--r-- | docs/design.rst | 24 | ||||
-rw-r--r-- | docs/index.rst | 17 | ||||
-rw-r--r-- | docs/modeling.rst | 10 | ||||
-rw-r--r-- | docs/openapi/components.yml | 74 | ||||
-rw-r--r-- | docs/openapi/openapi.yml | 12 |
7 files changed, 96 insertions, 80 deletions
diff --git a/docs/_static/cps-r9-ncmp-dmi-plugin-interface-diagram.png b/docs/_static/cps-r9-ncmp-dmi-plugin-interface-diagram.png Binary files differnew file mode 100644 index 00000000..6c5903d2 --- /dev/null +++ b/docs/_static/cps-r9-ncmp-dmi-plugin-interface-diagram.png diff --git a/docs/architecture.rst b/docs/architecture.rst index 65125764..65e10d45 100644 --- a/docs/architecture.rst +++ b/docs/architecture.rst @@ -6,8 +6,6 @@ DMI Plugin Architecture ####################### -.. warning:: draft - .. toctree:: :maxdepth: 1 @@ -15,14 +13,9 @@ DMI Plugin Architecture High Level Component Definition and Architectural Relationships =============================================================== -The DMI plugin provides a gateway for registration of CM Handles within CPS - -Project implementation proposal page describing scope is here: -`CPS-390 Spike: Define and Agree DMI Plugin REST Interface <https://wiki.onap.org/display/DW/CPS-390+Spike%3A+Define+and+Agree+DMI+Plugin+REST+Interface>`_ +The DMI plugin provides a gateway for registration and syncing of CM Handles within CPS. -This page reflects the state for Istanbul-R9 release. - -.. image:: _static/dmi-plugin-r9-arch-diagram.PNG +.. image:: _static/cps-r9-ncmp-dmi-plugin-interface-diagram.png API definitions =============== @@ -30,11 +23,33 @@ API definitions The DMI plugin provides following interfaces. .. list-table:: - :header-rows: 0 + :header-rows: 1 * - Interface name - Interface definition - Interface capabilities - Protocol - -The DMI plugin Basic Concepts are described in :doc:`modeling`. + * - CPS-E-05 + - Provides external clients with xNF data access and module information + - - Create data + - Delete data + - Update data + - Read data + - Query data + - Query module references + - REST + * - CPS-NCMP-I-01 + - DMI Plugin Inventory + - - Register Plug-in CM-Handles + - REST + * - DMI-I-01 + - Provides NCMP with xNF data access and module information + - - Create data + - Delete data + - Update data + - Read data + - Query data + - Query module references + - REST + +More details on the CPS interface CPS-E-05 which is responsible for the DMI Plugin can be found on the `CPS Architecture Page <https://docs.onap.org/projects/onap-cps/en/latest/architecture.html>`_.
\ No newline at end of file diff --git a/docs/design.rst b/docs/design.rst index e65c5aed..708feeb3 100644 --- a/docs/design.rst +++ b/docs/design.rst @@ -9,8 +9,6 @@ DMI Plugin Design ################# -.. warning:: draft - .. toctree:: :maxdepth: 1 @@ -19,10 +17,10 @@ Offered APIs The DMI Plugin supports the public APIs listed in the link below: -:download:`DMI Rest OpenApi Specification <openapi/openapi.yml>` +:download:`DMI Rest OpenApi Specification <openapi/openapi.yaml>` -Exposed API ------------ +View Offered APIs +----------------- 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. @@ -31,10 +29,16 @@ Specification can be accessed using following URI: .. code-block:: bash - “http://<hostname>:<port>/v3/api-docs?group=dmi-plugin-docket” + http://<hostname>:<port>/v3/api-docs?group=dmi-plugin-docket + +Additionally, the Swagger User Interface can be found at the following URI. The component may be changed between CPS-Core +and CPS-NCMP using the drop down table in the top right: + +.. code-block:: bash + + http://<hostname>:<port>/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/ -DMI Plugin CM Handles -===================== +Consumed APIs +============= -Several DMI Plugin APIs use the cm-handle parameter. -The DMI Plugin CM Handles are described in detail in :doc:`dmi-plugin-cm-handle`. +- SDNC: REST based interface exposed by the SDNC client. This is used to retrieve the yang resources and modules for CPS. diff --git a/docs/index.rst b/docs/index.rst index 54da6148..7d1fcf37 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -8,34 +8,27 @@ .. THIS IS USED INTERNALLY IN CPS ONLY .. _dmi-framework-doc: -DMI Plugin Documentation for the Istanbul-R9 Release +DMI-Plugin Documentation for the Istanbul-R9 Release ---------------------------------------------------- -.. warning:: draft - .. toctree:: :maxdepth: 1 overview.rst architecture.rst + admin-guide.rst design.rst modeling.rst deployment.rst release-notes.rst -CPS-Core Documentation for the Istanbul-R9 Release +CPS-NCMP Documentation for the Istanbul-R9 Release --------------------------------------------------------- -.. toctree:: - :maxdepth: 3 - -* `CPS Core(placeholder) `_ +* `CPS-NCMP <https://docs.onap.org/projects/onap-cps/en/latest/index.html>`_ CPS-Temporal Documentation for the Istanbul-R9 Release ------------------------------------------------------ -.. toctree:: - :maxdepth: 1 - -* `CPS Temporal(placeholder) `_
\ No newline at end of file +* `CPS-Temporal <https://docs.onap.org/projects/onap-cps-cps-temporal/en/latest/index.html>`_ diff --git a/docs/modeling.rst b/docs/modeling.rst index 63f25b7c..fdfcef06 100644 --- a/docs/modeling.rst +++ b/docs/modeling.rst @@ -6,13 +6,9 @@ DMI Plugin Modeling ################### -.. warning:: draft - .. toctree:: :maxdepth: 1 -Basic Concepts -============== - -.. image:: _static/dmi-plugin-modeling-concepts.png - :alt: Basic entities relationship +The DMI Plugin acts as a proxy and as such does not have its own data model. For more information on the data which +is passed through the DMI Plugin, please refer to the `NCMP Modeling Section <https://docs.onap.org/projects/onap-cps/en/latest/modeling.html#ncmp-modeling>`_ +of the `CPS Modeling Page <https://docs.onap.org/projects/onap-cps/en/latest/modeling.html>`_. diff --git a/docs/openapi/components.yml b/docs/openapi/components.yml index 736639d8..30e5987f 100644 --- a/docs/openapi/components.yml +++ b/docs/openapi/components.yml @@ -19,14 +19,15 @@ components: items: type: string - DmiModuleReadRequestBody: + ModuleReferencesRequest: + type: object + properties: + cmHandleProperties: + $ref: '#/components/schemas/cmHandleProperties' + + ModuleResourcesReadRequest: type: object properties: - operation: - type: string - enum: [read] - dataType: - type: string data: type: object properties: @@ -36,14 +37,11 @@ components: type: object properties: name: - type: string + $ref: '#/components/schemas/name' revision: - type: string + $ref: '#/components/schemas/revision' cmHandleProperties: - type: object - additionalProperties: - type: string - example: system-001 + $ref: '#/components/schemas/cmHandleProperties' ModuleSet: type: object @@ -56,7 +54,7 @@ components: moduleName: type: string revision: - type: string + $ref: '#/components/schemas/revision' namespace: type: string @@ -73,7 +71,7 @@ components: moduleName: type: string revision: - type: string + $ref: '#/components/schemas/revision' DataAccessReadRequest: type: object @@ -82,9 +80,7 @@ components: type: string enum: [ read ] cmHandleProperties: - type: object - additionalProperties: - type: string + $ref: '#/components/schemas/cmHandleProperties' DataAccessWriteRequest: type: object @@ -97,9 +93,21 @@ components: data: type: string cmHandleProperties: - type: object - additionalProperties: - type: string + $ref: '#/components/schemas/cmHandleProperties' + + cmHandleProperties: + type: object + additionalProperties: + type: string + example: {"prop1":"value1","prop2":"value2"} + + name: + type: string + example: someName + + revision: + type: string + example: someRevision responses: NotFound: @@ -174,19 +182,21 @@ components: type: string enum: [ application/json, application/yang-data+json ] - fieldsParamInQuery: - name: fields + optionsParamInQuery: + name: options in: query - description: Fields parameter to filter resource + description: options parameter in query, it is mandatory to wrap key(s)=value(s) in parenthesis'()'. required: false schema: type: string - - depthParamInQuery: - name: depth - in: query - description: Depth parameter for response - required: false - schema: - type: integer - minimum: 1
\ No newline at end of file + allowReserved: true + examples: + sample1: + value: + options: (key1=value1,key2=value2) + sample2: + value: + options: (key1=value1,key2=value1/value2) + sample3: + value: + options: (key1=10,key2=value2,key3=[val31,val32])
\ No newline at end of file diff --git a/docs/openapi/openapi.yml b/docs/openapi/openapi.yml index 1e7b38c9..83c05abb 100644 --- a/docs/openapi/openapi.yml +++ b/docs/openapi/openapi.yml @@ -37,7 +37,7 @@ paths: - dmi-plugin summary: Get all modules for cm handle description: Get all modules for given cm handle - operationId: getModulesForCmHandle + operationId: getModuleReferences parameters: - name: cmHandle in: path @@ -50,7 +50,7 @@ paths: content: application/json: schema: - $ref: 'components.yml#/components/schemas/DataAccessReadRequest' + $ref: 'components.yml#/components/schemas/ModuleReferencesRequest' responses: '200': description: OK @@ -113,7 +113,7 @@ paths: content: application/json: schema: - $ref: 'components.yml#/components/schemas/DmiModuleReadRequestBody' + $ref: 'components.yml#/components/schemas/ModuleResourcesReadRequest' responses: '200': description: OK @@ -139,8 +139,7 @@ paths: - $ref: 'components.yml#/components/parameters/cmHandleInPath' - $ref: 'components.yml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yml#/components/parameters/acceptParamInHeader' - - $ref: 'components.yml#/components/parameters/fieldsParamInQuery' - - $ref: 'components.yml#/components/parameters/depthParamInQuery' + - $ref: 'components.yml#/components/parameters/optionsParamInQuery' requestBody: description: Operational body content: @@ -168,8 +167,7 @@ paths: - $ref: 'components.yml#/components/parameters/cmHandleInPath' - $ref: 'components.yml#/components/parameters/resourceIdentifierInQuery' - $ref: 'components.yml#/components/parameters/acceptParamInHeader' - - $ref: 'components.yml#/components/parameters/fieldsParamInQuery' - - $ref: 'components.yml#/components/parameters/depthParamInQuery' + - $ref: 'components.yml#/components/parameters/optionsParamInQuery' requestBody: description: Operational body content: |