...
It is accessible via HTTPS : https://gerrit.onap.org/r/a/so.git
Or SSH : ssh://USERNAME@gerritUSERNAME@gerrit.onap.org:29418/so
Please make sure to review the ONAP Development Procedures and Policies to understand how to interact with the gerrit/git repositories.
...
- Camunda BPM engine code flow for step by step order flow execution
- Groovy script which invoked from camunda bpmn block for execution
- Business logic written in java using Springboot framework
- Mariadb for storing the metadata of the order flow execution
Unit test
The unit tests are composed of 2 different types:
- The standard unit tests, testing obviously the class and methods
- The Spring integration tests that really starts SO (using @SpringBootTest) and that can make use of everything in the code, like the database, the http connection, etc ...
Location details
Path | Content |
Docs |
|
/docs | The documentation in .rst files |
Logs |
|
/logger | The logging configuration of SO |
Docker |
|
/packages | The docker image preparation file |
Modules |
|
/mso-api-handlers | Exposed outside as rest service for entry point of incoming SO requests |
/bpmn | Contains all business logic of service order execution and interact with AAI, SDNC, requestdb, catalogdb etc, also accepts notification response from AAI via rest interface callback |
/adapters/mso-requests-db-adapter | Interacts with requestdb schema to update progress status |
/mso-catalog-db | Interacts with CatalogDB schema to query order details |
/so-monitoring | Monitoring UI portal of SO using AngularJS |
/adapters/mso-sdnc-adapter | Interacts with SDNC |
|
|
Code of Each Modules |
|
/src/main/java | The back-end and front-end code + resources |
/src/main/test | The unit tests and Spring integration tests to validate SO code |
/src/main/groovy | Groovy scripts used by maven build |
/src/main/resources | The default SO configuration files + the BPMN code flow files |
/src/main/frontend | The frontend code (HTML + javascript/typescript) using AngularJS framework |
Getting the containers
ONAP SO containers are stored on here for the releases, and here for the snapshots
The following Docker images are the actual deployment images used for running SO
Name | Tag | Description |
onap/so/api-handler-infra | 1.4.4 | MSO Api handler for SO REST service entry point |
onap/so/bpmn-infra | 1.4.4 | BPMN-Infra contains business logic of execution flow |
onap/so/catalog-db-adapter | 1.4.4 | CatalogDB to interact with mariaDB catalogdb schema |
onap/so/openstack-adapter | 1.4.4 | Adapter to interact with Openstack as a VIM |
onap/so/request-db-adapter | 1.4.4 | RequestDB to interact with mariaDB requestdb schema |
onap/so/sdc-controller | 1.4.4 | SDC-controller to interact with SDC module |
onap/so/sdnc-adapter | 1.4.4 | SDNC Adapter to interacts with SDNC module |
onap/so/so-monitoring | 1.4.4 | SO Monitoring for monitoring the SO workflows |
onap/so/vfc-adapter | 1.4.4 | Adapter to interact with VFC module |
onap/so/vnfm-adapter | 1.4.4 | Adapter to interact with external VNFMs through SOL003 interface |
library/mariadb | 10.1.11 | MariaDB image from Docker.io, this image hosts the database and is preloaded with SO schema and configuration at startup |
Building SO
To build SO you need to use maven with the goal "clean install". By default it executes the standard unit tests and the Spring integration tests but does not build the docker images.
...
It is accessible via HTTPS : https://gerrit.onap.org/r/a/so/docker-config.git
Or SSH : ssh://USERNAME@gerrit.onap.org:29418/so/docker-config
To start SO, enter into the checked out docker-config folder and run command “docker-compose up -d”
...
Starting SO dependencies using mock
SO service creation flow down the line interacts with AAI, OSS/BSS, SDNC. So user need to run mocking for these services if need to test the SO.
...
AAI pointed to 8443 port, so start moco mocking stub on that port for AAI by running below command.
java -jar moco-runner-0.11.0-standalone.jar http -p 8441 -c config-onap.json
config-onap.json – this file should contains the request/response mapping as needed.
...