From 3d7081f169f4b0e971f4259b5245861cc2f7c82a Mon Sep 17 00:00:00 2001 From: pwielebs Date: Thu, 13 Sep 2018 13:49:33 +0200 Subject: User documentation added Change-Id: Ic5a14b247123a94fcfb1348b372d1603b6c26107 Issue-ID: DCAEGEN2-398 Signed-off-by: pwielebs --- docs/sections/apis/PRH.rst | 146 +++++++++++++++++++++++++++++++++++++++ docs/sections/apis/PRH.yaml | 76 ++++++++++++++++++++ docs/sections/images/prhAlgo.png | Bin 0 -> 44604 bytes docs/sections/offeredapis.rst | 1 + 4 files changed, 223 insertions(+) create mode 100644 docs/sections/apis/PRH.rst create mode 100644 docs/sections/apis/PRH.yaml create mode 100644 docs/sections/images/prhAlgo.png diff --git a/docs/sections/apis/PRH.rst b/docs/sections/apis/PRH.rst new file mode 100644 index 00000000..f693ef76 --- /dev/null +++ b/docs/sections/apis/PRH.rst @@ -0,0 +1,146 @@ +============================== +PRH (PNF Registration Handler) +============================== + +:Date: 2018-09-13 + +.. contents:: + :depth: 3 +.. + +Overview +======== + +Physical Network Function Registration Handler is responsible for registration of PNF (Physical Network Function) to +ONAP (Open Network Automation Platform) in plug and play manner. + +Introduction +============ + +PRH is delivered as one **Docker container** which hosts application server and can be started by `docker-compose`. + +Functionality +============= +.. image:: ../images/prhAlgo.png + + +Paths +===== + +GET /events/unauthenticated.VES_PNFREG_OUTPUT +----------------------------------------------- + +Description +~~~~~~~~~~~ + +Reads PNF registration fromD DMaaP (Data Movement as a Platform) + + +Responses +~~~~~~~~~ + ++-----------+-------------------------------------------+ +| HTTP Code | Description | ++===========+===========================================+ +| **200** | successful response | ++-----------+-------------------------------------------+ + + +PATCH /aai/v12/network/pnfs/{pnf-name} +-------------------------------------- + +Description +~~~~~~~~~~~ + +Update AAI (Active and Available Inventory) PNF's specific entries: + - ipv4 to ipaddress-v4-oam + - ipv6 to ipaddress-v6-oam + +Parameters +~~~~~~~~~~ + ++----------+---------------+---------------------------------+------------------+ +| Type | Name | Description | Schema | ++==========+===============+=================================+==================+ +| **Path** | | **pnf-name**| Name of the PNF. | string (text) | +| | | *required* | | | ++----------+---------------+---------------------------------+------------------+ +| **Body** | **patchbody** | Required patch body. | | ++----------+---------------+---------------------------------+------------------+ + + +Responses +~~~~~~~~~ + ++-----------+-------------------------------------------+ +| HTTP Code | Description | ++===========+===========================================+ +| **200** | successful response | ++-----------+-------------------------------------------+ + + +POST /events/unauthenticated.PNF_READY +-------------------------------------- + +Description +~~~~~~~~~~~ + +Publish PNF_READY to DMaaP and set: + - pnf-id to correlationID + - ipv4 to ipaddress-v4-oam + - ipv6 to ipaddress-v6-oam + +Parameters +~~~~~~~~~~ + ++----------+----------------+---------------------------------+------------------+ +| Type | Name | Description | Schema | ++==========+================+=================================+==================+ +| **Body** | | **postbody** | Required patch body. | `hydratorappput | +| | | *required* | | <#_hydratorapppu | +| | | | t>`__ | ++----------+----------------+---------------------------------+------------------+ + + +Responses +~~~~~~~~~ + ++-----------+-------------------------------------------+ +| HTTP Code | Description | ++===========+===========================================+ +| **200** | successful response | ++-----------+-------------------------------------------+ + +Compiling PRH +============= + +Whole project (top level of PRH directory) and each module (sub module directory) can be compiled using +`mvn clean install` command. + +Main API Endpoints +================== + +Running with dev-mode of PRH + - Heartbeat: **http://:8100/heartbeat** or **https://:8443/heartbeat** + - Start PRH: **http://:8100/start** or **https://:8433/start** + - Stop PRH: **http://:8100/stopPrh** or **https://:8433/stopPrh** + +Maven GroupId: +============== + +org.onap.dcaegen2.services + +Maven Parent ArtifactId: +======================== + +dcae-services + +Maven Children Artifacts: +========================= + +1. prh-app-server: Pnf Registration Handler (PRH) server +2. prh-aai-client: Contains implementation of AAI client +3. prh-dmaap-client: Contains implementation of DmaaP client +4. prh-commons: Common code for whole prh modules + + diff --git a/docs/sections/apis/PRH.yaml b/docs/sections/apis/PRH.yaml new file mode 100644 index 00000000..37040bc8 --- /dev/null +++ b/docs/sections/apis/PRH.yaml @@ -0,0 +1,76 @@ +--- +swagger: '2.0' +info: + description: This page lists all the rest apis for PRH app server. + version: '1.0' + title: PRH app server +host: localhost:8100 +basePath: "/" +tags: +- name: heartbeat-controller + description: Check liveness of PRH service +- name: schedule-controller + description: Schedule Controller +paths: + "/heartbeat": + get: + tags: + - heartbeat-controller + summary: Returns liveness of PRH service + operationId: heartbeatUsingGET + produces: + - "*/*" + responses: + '200': + description: PRH sevice is living + schema: + "$ref": "#/definitions/Mono«ResponseEntity«string»»" + '401': + description: You are not authorized to view the resource + '403': + description: Accessing the resource you were trying to reach is forbidden + '404': + description: The resource you were trying to reach is not found + "/start": + get: + tags: + - schedule-controller + summary: Start scheduling worker request + operationId: startTasksUsingGET + produces: + - "*/*" + responses: + '200': + description: OK + schema: + "$ref": "#/definitions/Mono«ResponseEntity«string»»" + '401': + description: Unauthorized + '403': + description: Forbidden + '404': + description: Not Found + "/stopPrh": + get: + tags: + - schedule-controller + summary: Stop scheduling worker request + operationId: stopTaskUsingGET + produces: + - "*/*" + responses: + '200': + description: OK + schema: + "$ref": "#/definitions/Mono«ResponseEntity«string»»" + '401': + description: Unauthorized + '403': + description: Forbidden + '404': + description: Not Found +definitions: + Mono«ResponseEntity«string»»: + type: object + title: Mono«ResponseEntity«string»» + diff --git a/docs/sections/images/prhAlgo.png b/docs/sections/images/prhAlgo.png new file mode 100644 index 00000000..3d3c8093 Binary files /dev/null and b/docs/sections/images/prhAlgo.png differ diff --git a/docs/sections/offeredapis.rst b/docs/sections/offeredapis.rst index ace3cda1..d805c5e5 100644 --- a/docs/sections/offeredapis.rst +++ b/docs/sections/offeredapis.rst @@ -10,5 +10,6 @@ DCAEGEN2 Components Offered APIs apis/inventory.rst apis/ves.rst apis/dcaecdap.rst + apis/PRH.rst -- cgit 1.2.3-korg