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


  • 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