Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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


Info
titleDo you really need to build?

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 H - Run in Docker  for running the release G H Non-RT RIC.  


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

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

Table of Contents

Project Requirements

  • Java 11 17 (make sure that JAVA_HOME environment variable points to correct Java version).
  • Docker and docker-compose (latest).
  • git (latest) -  for downloading code repos.
  • Maven 3.6.

Build Code

Build nonrtric Docker containers

Download the following repos:

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

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

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

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

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

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

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

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

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

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

    git clone "https://gerrit.nordixo-ran-sc.org/oranscr/nonrtric/plt/ranpm" -b h-release    


           

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

...

To build docker images for ranpm, go into the repo and follow the steps below:

Code Block
languagebash
cd ranpm/install

The following images need to be built manually before installation of ranpm. If remote or multi node cluster is used, then an image repo should be availbale to push the built images to. if external repo and run the command below: Use the version found in the file container-tag.yamlis used, use the same repo for all built images and configure the responame in 'helm/global-values.yaml' (The parameter value shall have a trailing '/' followed by the username)

  1. ranpm/https-server
  2. pm-rapp
Code Block
languagebash
Build for internal kubernetes, execute the script below:
./build.sh no-push
Build for remote kubernetes, execute the script below:[Externally accessible image repo(E.x: docker hub) is needed]
./build.sh <external-image-repo>

The installation of ranpm is made by a few scripts. The main part of ranpm is installed by a single script. Then, additional parts can be added on top. All installations in kubernetes is made by helm charts. (NOTE: The install scipts should be executed in the below order only)

  • install-nrt.sh: Installs the main parts of the ranpm setup.
  • install-pm-log.sh: Installs the producer for influx db
  • install-pm-influx-job.sh: Sets up an alternative job to produce data stored in influx db.
  • install-pm-rapp.sh: Installs a raap that subscribe and print out received data.

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.

Code Block
languagebash
themeEmacs
$ docker images

o-ran-sc/nonrtric-plt-a1policymanagementservice       2.56.1-SNAPSHOT0  
o-ran-sc/nonrtric-plt-dmaapadapter                    1.23.1-SNAPSHOT0
o-ran-sc/nonrtric-plt-helmmanager                     1.23.1-SNAPSHOT0
o-ran-sc/nonrtric-plt-informationcoordinatorservice   1.45.1-SNAPSHOT0  
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.12.10
o-ran-sc/nonrtric-rapp-ransliceassurance-icsversion   1.12.10
o-ran-sc/nonrtric-rapp-ransliceassurance              1.23.10
o-ran-sc/nonrtric-rapp-orufhrecovery                  1.1.1  
o-ran-sc/nonrtric-plt-capifcore                       1.1.0
o-ran-sc/nonrtric-plt-ranpm-datafilecollector         1.0.0
o-ran-sc/nonrtric-plt-pmlog                           1.0.0
o-ran-sc/nonrtric-plt-ranpm-pm-file-converter         1.0.1
o-ran-sc/nonrtric-plt-pmproducer                      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 gh-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):

...

Code Block
languagebash
themeEmacs
$ 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 fh-release

Build the code and create docker images

Code Block
languagebash
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.12.0-SNAPSHOT .

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

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

Code Block
languagebash
themeEmacs
$ docker images
o-ran-sc/nonrtric-gateway                           1.12.0-SNAPSHOT
o-ran-sc/nonrtric-controlpanel                      2.45.10-SNAPSHOT

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