This xApp can be onboarded through the xApp Onboarder. The xapp descriptor
is under the xapp-descriptor/ directory.
-Then the xapp can be deployed through the App Manager.
+Then the xapp can be deployed through the App Manager.
+Procedure to Onboard the xapp is given in installation guide, in docs folder
GRPC communication can be tested using the grpccurl command
+
+
+In the current implementation, timer is started after initiating Control Request to E2Node. So timer expiry errors will be seen in logs w.r.t. Control Resp.
+As control ACK is not handled this error can be ignored
+
"google.golang.org/grpc"
"google.golang.org/grpc/health"
"google.golang.org/grpc/health/grpc_health_v1"
+ "google.golang.org/grpc/reflection"
"net"
)
// attach the Ping service to the server
rc.RegisterMsgCommServer(lgRPCServer, &lRCControlSrv)
+ reflection.Register(lgRPCServer)
//Register to health service
grpc_health_v1.RegisterHealthServer(lgRPCServer, health.NewServer())
Installation
------------
-[to come]
+Steps to onboard the xapp
+ 1)echo '{"config-file.json_url": "https://gerrit.o-ran-sc.org/r/gitweb?p=ric-app/rc.git;a=blob_plain;f=xapp-descriptor/config.json;hb=HEAD" }' > onboard_rc.url
+
+ 2)edit onboard_rc.url to include controls-schema.json file as shown below
+ { "config-file.json_url": "https://gerrit.o-ran-sc.org/r/gitweb?p=ric-app/rc.git;a=blob_plain;f=xapp-descriptor/config.json;hb=HEAD",
+ "controls-schema.json_url": "https://gerrit.o-ran-sc.org/r/gitweb?p=ric-app/rc.git;a=blob_plain;f=xapp-descriptor/schema.json;hb=HEAD" }
+
+ 3)Onboard the rc xapp using the below command :
+ curl --location --request POST "http://$(hostname):32080/onboard/api/v1/onboard/download" --header 'Content-Type: application/json' --data-binary "@./onboard_rc.url"
+
+ After this command: xapp should be created
+ Eg:
+ curl --location --request POST "http://$(hostname):32080/onboard/api/v1/onboard/download" --header 'Content-Type: application/json' --data-binary "@./onboard_rc.url"
+ {
+ "status": "Created"
+ }
+ 4)Deploying the xapp:
+ curl --location --request POST "http://$(hostname):32080/appmgr/ric/v1/xapps" --header 'Content-Type: application/json' --data-raw '{"xappName": "rc"}'
+
+ after this step the xapp should be in running state
+ ricxapp ricxapp-rc-5ccdcc9f6f-ktq7w 1/1 Running 0 88m
+
+ 5) Edit the xapp svc file to configure the grpcserver port
+ kubectl edit svc -n ricxapp service-ricxapp-rc-rmr
+ Add the port info:
+ - name: grpc-server
+ port: 7777
+ protocol: TCP
+ targetPort: 7777
+
{
-"controls-schema.json": {
"$schema": "http://json-schema.org/draft-07/schema#", "$id": "#/controls",
"type": "object",
"title": "Controls Section Schema",
}
}
}
- }
}