This page describes how to build release G version of Non-RT RIC. 


In general, there is no need to build the images manually.

Building from scratch is error-prone, and some development experience is required.

All images for the release are available in nexus image repositories. 

Please refer to the page  Release G - Run in Docker for running the release G Non-RT RIC.  


Details of the architecture can be found from  Release G page. 

(Note: The actual docker image version numbers/tags may be different from the instructions below as development continues in the relevant repositories)

Project Requirements

Build Code

Build nonrtric Docker containers

Download the following repos:

     git clone "https://gerrit.o-ran-sc.org/r/nonrtric/plt/a1policymanagementservice" -b g-release  --recursive

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/plt/dmaapadapter" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/plt/helmmanager" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/plt/informationcoordinatorservice" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/plt/rappcatalogue" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/plt/dmaapmediatorproducer" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/rapp/ransliceassurance" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/rapp/orufhrecovery" -b g-release

git clone "https://gerrit.o-ran-sc.org/r/nonrtric/plt/sme" -b g-release        


           

To build docker images of a1policymanagementservice, dmaapadapter, helmmanager, informationcoordinatorservice, and rappcatalogue; go into the repo of each product and run the following command:

mvn clean install -Dmaven.test.skip=true


To build docker image of nonrtric, go into the repo run the commands below. Use the version found in the file container-tag.yaml.

cd auth-token-fetch
docker build -t o-ran-sc/nonrtric-plt-auth-token-fetch:<image-version> .


To build docker image of the enhanced rappcatalogue, go into the repo rappcatalogue run the commands below. Use the version found in the file container-tag.yaml.

cd catalogue-enhanced
docker build -t o-ran-sc/nonrtric-plt-rappcatalogue-enhanced:<image-version> .


To build docker image of dmaapmediatorproducer, go into the repo run the command below. Use the version found in the file container-tag.yaml.

docker build -t o-ran-sc/nonrtric-plt-dmaapmediatorproducer:<image-version> .


To build docker images of the use cases for ransliceassurance, go into the repo for and run the command below. Note! The use case have two implementations, in subfolders. Choose the version needed and perform the build in the corresponding subfolder. Use the version found in the file container-tag.yaml in each subfolder.

cd icsversion
docker build -t o-ran-sc/nonrtric-rapp-ransliceassurance-icsversion:<image-version> .

cd smoversion
docker build -t o-ran-sc/nonrtric-rapp-ransliceassurance:<image-version> .


To build docker images of the use cases for orufhrecovery, go into the repo for and run the command below. Use the version found in the file container-tag.yaml.

cd goversion
docker build -t o-ran-sc/nonrtric-o-ru-closed-loop-recovery:<image-version> .


To build docker images sme, go into the repo for and run the command below. Use the version found in the file container-tag.yaml.

cd capifcore
docker build -t o-ran-sc/nonrtric-plt-capifcore:<image-version> .


If the build was successful images with following name and tag shall be built. Use the command 'docker images' to view newly built images in the local docker registry.

$ docker images

o-ran-sc/nonrtric-plt-a1policymanagementservice       2.5.1-SNAPSHOT  
o-ran-sc/nonrtric-plt-dmaapadapter                    1.2.1-SNAPSHOT
o-ran-sc/nonrtric-plt-helmmanager                     1.2.1-SNAPSHOT
o-ran-sc/nonrtric-plt-informationcoordinatorservice   1.4.1-SNAPSHOT  
o-ran-sc/nonrtric-plt-rappcatalogue                   1.2.0-SNAPSHOT 
o-ran-sc/nonrtric-plt-rappcatalogue-enhanced          1.0.1
o-ran-sc/nonrtric-plt-auth-token-fetch                1.1.1
o-ran-sc/nonrtric-plt-dmaapmediatorproducer           1.1.1
o-ran-sc/nonrtric-rapp-ransliceassurance-icsversion   1.1.1
o-ran-sc/nonrtric-rapp-ransliceassurance              1.2.1
o-ran-sc/nonrtric-rapp-orufhrecovery                  1.1.1  
o-ran-sc/nonrtric-plt-capifcore                       1.0.1

(Note: The actual docker image version numbers/tags may be different as development continues in the relevant repositories. Use the latest version numbers in the instructions below)

Build A1 simulator (previously called Near-RT RIC A1 Interface) container

Download the A1 simulator repo (defaults to master branch - the simulator supports all available A1 versions): 

     git clone "https://gerrit.o-ran-sc.org/r/sim/a1-interface" -b g-release

Create docker image

To create docker image A1 simulator (note that the given image name must match the name given in docker startup later):

cd a1-interface/near-rt-ric-simulator
docker build -t near-rt-ric-simulator:latest .

Using the command below you can check that the name below is in the list of available images.

$ docker images
near-rt-ric-simulator                               latest           

Build nonrtric / Control panel and gateway containers

Download the nonrtric repo:  

     git clone "https://gerrit.o-ran-sc.org/r/portal/nonrtric-controlpanel" -b f-release

Build the code and create docker images

cd nonrtric-controlpanel
cd nonrtric-gateway
mvn clean install  -Dmaven.test.skip=true
docker build --build-arg JAR=nonrtric-gateway-1.1.0-SNAPSHOT.jar -t o-ran-sc/nonrtric-gateway:1.1.0-SNAPSHOT .

cd ../webapp-frontend
docker build -t o-ran-sc/nonrtric-controlpanel:2.4.1-SNAPSHOT .

Using the command below you can check that the names below are in the list of available images.

$ docker images
o-ran-sc/nonrtric-gateway                           1.1.0-SNAPSHOT
o-ran-sc/nonrtric-controlpanel                      2.4.1-SNAPSHOT

(Note: The actual docker image version numbers/tags may be different as development continues in the relevant repositories)