VES OpenApi Manager
Description
This application should partially validate incoming service distributions in SDC. It validates each artifact of type VES_EVENT. Its purpose is to check whether schemaReferences of stndDefined events included in VES_EVENT artifacts are matching the schemas which VES Collector contains.
Instructions
How to prepare environment for local ves-openapi-manager with lab connection
-
Connect to lab and expose ports of message-router service by setting spec.type to NodePort.
-
Add to /etc/hosts new entry:
<lab_worker_node_ip> sdc-be.onap
- Get exposed port of 3904 internal port of message-router.
Set up connection configuration in environment.config file. - MESSAGE_ROUTER_PORT - exposed port of message-router. - RKE_IP - IP of lab RKE node. - WORKER_IP - IP of lab worker node. - SSH_LAB_KEY_PATH - path to lab SSH key.
- Local port forwarding is required to set up proper connection from local environment to message-router on the lab.
Run this to enable port-forwarding (CTRL+C to end):
make port-forwarding
How to locally start ves-openapi-manager
Currently, there are two common ways to run application, both described below.
Start in IntelliJ
Right click on Main class, then Run or Debug button.
Start as Docker container
Run (from other terminal than used for port-forwarding):
make all
Lab connection verification
Correctly connected to lab application should print logs:
distribution client initialized successfuly
and
distribution client started successfuly
How to use ves-openapi-manager
After preparing environment, starting ves-openapi-manager and successful connection to lab, application will listen for service distributions taking place in SDC.
- In SDC UI, create Service with Resource (e.g. PNF) containing VES_EVENT artifact.
- (Re)distribute created Service.
When distribution takes place, ves-openapi-manager downloads each VES_EVENT artifact to validate its stndDefined events.
Results of validation are visible in two places: - In SDC UI in Service -> Distributions view under specific distribution as component ves-openapi-manager. It might take few minutes to show results after service distribution. - In logs of ves-openapi-manager, right after validation takes place.
Docker image
Building
There are at least two ways to build docker image.
Using makefile:
make build docker
Direct creation with mvn:
mvn clean package docker:build
Image will be named: onap/org.onap.dcaegen2.platform.ves-openapi-manager