From 74d53a77e5d74c921cfbc034a01f2cbf08e102a4 Mon Sep 17 00:00:00 2001 From: efiacor Date: Tue, 20 Dec 2022 11:03:01 +0000 Subject: [PATCH] [VES-OPENAPI] Update docs with kafka Signed-off-by: efiacor Change-Id: I0a96c14cb378e3a4a6e8eab83c95667b432a139c Issue-ID: DMAAP-1810 --- .../services/ves-openapi-manager/architecture.rst | 2 +- .../services/ves-openapi-manager/deployment.rst | 6 +++--- .../ves-openapi-manager/resources/architecture.png | Bin 23024 -> 16810 bytes 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/sections/services/ves-openapi-manager/architecture.rst b/docs/sections/services/ves-openapi-manager/architecture.rst index 2e4c4276..47d036d4 100644 --- a/docs/sections/services/ves-openapi-manager/architecture.rst +++ b/docs/sections/services/ves-openapi-manager/architecture.rst @@ -7,7 +7,7 @@ VES OpenAPI Manager architecture ================================ Functionalities of VES OpenAPI Manager require communication with other ONAP components. Because of that, SDC Distribution Client has been used as a library to achieve such a communication. There are two components required by -application to work: SDC BE and Message Router. SDC Distribution Client provides communication with both of them when +application to work: SDC BE and Kafka. SDC Distribution Client provides communication with both of them when it's properly configured (for application configuration instruction refer to: :ref:`ves-openapi-manager-deployment` ). .. image:: resources/architecture.png diff --git a/docs/sections/services/ves-openapi-manager/deployment.rst b/docs/sections/services/ves-openapi-manager/deployment.rst index fdec791a..e5797192 100644 --- a/docs/sections/services/ves-openapi-manager/deployment.rst +++ b/docs/sections/services/ves-openapi-manager/deployment.rst @@ -9,7 +9,7 @@ VES OpenAPI Manager is a simple Java application which can be started by using o prerequisites to work correctly: 1) File with OpenAPI schemas mappings. -2) Access to two ONAP services: SDC BE and Message Router. +2) Access to two ONAP services: SDC BE and Kafka. These prerequisites are met by default when using Helm charts created for VES OpenAPI Manager in OOM. It's described in more detail in *Helm chart* section. @@ -58,7 +58,7 @@ configured to deploy application with all prerequisites met. It achieves that by 1) Mounting ConfigMap with mapping file under */app/schema-map.json* path. 2) Proper setting environment variables to values described in section *Environment variables*. Mapping file path is set to point to mounted file and SDC BE URL is set to internal port available only from Kubernetes cluster. -3) Setting Readiness check. It waits for other ONAP components to start: SDC BE, Message Router. VES OpenAPI Manager Pod will not start until they are not ready. +3) Setting Readiness check. It waits for other ONAP components to start: SDC BE, Kafka. VES OpenAPI Manager Pod will not start until they are not ready. Local deployment ---------------- @@ -66,4 +66,4 @@ It's possible to run VES OpenAPI Manager in local environment which connects to requires exposing ports of some services on lab, creating local port tunneling and running VES OpenAPI Manager (using docker-compose or IDE e.g. IntelliJ). -It's described in more detail in the README in project repository (`README `_). \ No newline at end of file +It's described in more detail in the README in project repository (`README `_). diff --git a/docs/sections/services/ves-openapi-manager/resources/architecture.png b/docs/sections/services/ves-openapi-manager/resources/architecture.png index 5df1198f8ee1c6d93b6d1c3a0c037179d2915a47..6e862e9e4a7bda30b236c6bd9c431132dd433c32 100644 GIT binary patch literal 16810 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 DG&UTG -- 2.16.6