RNIB(Radio network information base) — xapp-frame-py master documentation

# RNIB(Radio network information base)

RNIB information is stored in SDL by E2mgr during the E2SETUP process. It is saved as protobuf serialized, see [nodeb-rnib](https://gerrit.o-ran-sc.org/r/admin/repos/ric-plt/nodeb-rnib) for .proto definition.

The .proto files defines the message format is located in the rnib repo. The rnib repo is set to submodule.

How to compile .proto files

Prerequisite

- protoc (v3.6.1)

    $ PYTHON_OUT="ricxappframe/entities/rnib"
    $ RNIB_PROTO="nodeb-rnib/entities"
    $ protoc --python_out="${PYTHON_OUT}" \
             --proto_path="${RNIB_PROTO}" \
             $(find "${RNIB_PROTO}" -iname "*.proto" -printf "%f ")
    $ sed -i -E 's/^import.*_pb2/from . \0/' ${PYTHON_OUT}/*_pb2.py

The reason why sed is needed

To use relative imports in generated modules : protobuf issue