Add readTheDocs link for O-DU usecase
[nonrtric.git] / docs / developer-guide.rst
index aea9f07..76d673e 100644 (file)
@@ -1,74 +1,96 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. SPDX-License-Identifier: CC-BY-4.0
+.. Copyright (C) 2021 Nordix
 
-A1 Mediation:
-1. SDNC Controller
-2. Near-RT RIC Simulator
+Developer Guide
+===============
 
-SDNC A1 Controller Developer Guide
-==================================
+This document provides a quickstart for developers of the Non-RT RIC parts.
 
-This document provides a quickstart for developers of the O-RAN SC A1 Controller SDNC Application
+Additional developer guides are available on the `O-RAN SC NONRTRIC Developer wiki <https://wiki.o-ran-sc.org/display/RICNR/Release+E>`_.
 
-Prerequisites
--------------
+A1 Policy Management Service & SDNC/A1 Controller & A1 Adapter
+--------------------------------------------------------------
 
-1. Java development kit (JDK), version 8
-2. Maven dependency-management tool, version 3.4 or later
-3. Python, version 2
-4. Docker, version 19.03.1 or later
-5. Docker Compose, version 1.24.1 or later
+The A1 Policy Management Service is implemented in ONAP. For documentation see `ONAP CCSDK documentation <https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/index.html>`_.
+and `wiki <https://wiki.onap.org/pages/viewpage.action?pageId=84672221>`_.
 
-Go to the northbound directory and run this command ::
-    mvn clean install
+Information Coordinator Service
+-------------------------------
+The Information Coordinator Service is a Java 11 web application built using the Spring Framework. Using Spring Boot
+dependencies, it runs as a standalone application.
 
-This will build the project and create artifcats in maven repo
+Its main functionality is to act as a data subscription broker and to decouple data producer from data consumers.
 
-Go to oam/installation directory and run this command ::
-    mvn clean install -P docker
+See the ./config/README file in the *information-coordinator-service* directory Gerrit repo on how to create and setup
+the certificates and private keys needed for HTTPS.
 
-This will create the docker images required for sdnc
+Start standalone
+++++++++++++++++
 
-After this step check for the docker images created by the maven build with this command ::
-    docker images | grep sdnc
+The project uses Maven. To start the Information Coordinator Service as a freestanding application, run the following
+command in the *information-coordinator-service* directory:
 
-Go to oam/installation/src/main/yaml and run this command ::
-    docker-compose up -d sdnc
+    +-----------------------------+
+    | mvn spring-boot:run         |
+    +-----------------------------+
 
-This will create the docker containers with the sdnc image, you can check the status of the docker container using ::
-    docker-compose logs -f sdnc
+There are a few files that needs to be available to run. These are referred to from the application.yaml file.
+The following properties have to be modified:
 
-The SDNC url to access the Northbound API,
-    http://localhost:8282/apidoc/explorer/index.html
+* server.ssl.key-store=./config/keystore.jks
+* app.webclient.trust-store=./config/truststore.jks
+* app.vardata-directory=./target
 
-Credentials: admin/Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+Start in Docker
++++++++++++++++
 
-Near-RT RIC Simulator Developer Guide
-=====================================
+To build and deploy the Information Coordinator Service, go to the "information-coordinator-service" folder and run the
+following command:
 
-Prerequisites
--------------
+    +-----------------------------+
+    | mvn clean install           |
+    +-----------------------------+
 
-1. Java development kit (JDK), version 8
-2. Maven dependency-management tool, version 3.4 or later
+Then start the container by running the following command:
 
-Go to the nearric-simulator/ directory and run this command ::
-     mvn clean install
+    +--------------------------------------------------------------------+
+    | docker run nonrtric-information-coordinator-service                |
+    +--------------------------------------------------------------------+
 
-If you want to genereate the sources from A1 yaml file, Go to nearric-simulator/a1-med-api/ and run this command ::
-     mvn generate-sources
+DMaaP Adaptor Service
+---------------------
 
-This will generate the A1PApi.java you need to call the generate-sources maven life cycle to generate the file
+This Java implementation is run in the same way as the Information Coordinator Service.
 
-The backend server listens for requests at this URL:
-   http://localhost:8080
+The following properties in the application.yaml file have to be modified:
+* server.ssl.key-store=./config/keystore.jks
+* app.webclient.trust-store=./config/truststore.jks
+* app.configuration-filepath=./src/test/resources/test_application_configuration.json
 
-The backend server publishes live API documentation at the URL
-   http://localhost:8080/swagger-ui.html
+DMaaP Mediator Producer
+-----------------------
 
-End-to-end call
-===============
+To build and run this Go implementation, see the README.md file under the folder "dmaap-mediator-producer" in the "nonrtric" repo.
+
+O-DU & O-RU fronthaul recovery
+------------------------------
+
+See the page in Wiki: `O-RU Fronthaul Recovery usecase <https://wiki.o-ran-sc.org/display/RICNR/O-RU+Fronthaul+Recovery+usecase>`_.
+
+Helm Manager
+------------
+
+See the page in Wiki: `Release E <https://wiki.o-ran-sc.org/display/RICNR/Release+E>`_.
+
+Kubernetes deployment
+=====================
+
+Non-RT RIC can be also deployed in a Kubernetes cluster, `it/dep repository <https://gerrit.o-ran-sc.org/r/admin/repos/it/dep>`_.
+hosts deployment and integration artifacts. Instructions and helm charts to deploy the Non-RT-RIC functions in the
+OSC NONRTRIC integrated test environment can be found in the *./nonrtric* directory.
+
+For more information on installation of NonRT-RIC in Kubernetes, see `Deploy NONRTRIC in Kubernetes <https://wiki.o-ran-sc.org/display/RICNR/Deploy+NONRTRIC+in+Kubernetes>`_.
 
-In order to make a complete end-to-end call, follow the instructions given in this `guide`_.
+For more information see `Integration and Testing documentation on the O-RAN-SC wiki <https://docs.o-ran-sc.org/projects/o-ran-sc-it-dep/en/latest/index.html>`_.
 
-.. _guide: https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=12157166
\ No newline at end of file