e2sm-rc-2.0 asn updated

Change-Id: I7262855fcbeb0061278e62490c7f3f5db2791cdb
Signed-off-by: rajalakshmisv <rajalakshmisv@gmail.com>
510 files changed
tree: 0a9ebba1d7feeaf69d2638686b7081e72bffc0f2
  1. cmd/
  2. control/
  3. docs/
  4. e2ap/
  5. e2sm/
  6. protocol/
  7. releases/
  8. unitTest/
  9. xapp-descriptor/
  10. .gitreview
  11. .readthedocs.yaml
  12. container-tag.yaml
  13. Dockerfile
  14. go.mod
  15. go.sum
  16. INFO.yaml
  17. README.md
  18. tox.ini
README.md

================================================================================== Copyright (c) 2020 AT&T Intellectual Property.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

RC Xapp

This repository contains the source for sending RIC control Msg to RAN/E2 Node based on the GRPC control request received from other xapps

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. 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,and also supports RIC Control ACK response from E2Node.

Steps to onboard the xapp (Pre Dawn Release)

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","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" }' > onboard.rc.url

2)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"
   }

3)Deploying the xapp: Eg: $curl --location --request POST "http://$(hostname):32080/appmgr/ric/v1/xapps" --header 'Content-Type: application/json' --data-raw '{"xappName": "rc"}' { "instances":null,"name":"rc","status":"deployed","version":"1.0" }

     after this step the xapp should be in running state

     ricxapp       ricxapp-rc-5ccdcc9f6f-ktq7w                                  1/1     Running     0          88m
  1. restart rtMgr so rmr is ready

Steps to deploy the xapp using dms_cli tool

1)Create a local helm repository with a port other than 8080 on host $docker run --rm -u 0 -it -d -p 8090:8080 -e DEBUG=1 -e STORAGE=local -e STORAGE_LOCAL_ROOTDIR=/charts -v $(pwd)/charts:/charts chartmuseum/chartmuseum:latest

2)Set CHART_REPO_URL env variable $export CHART_REPO_URL=http://0.0.0.0:8090

3)Check dms_cli health is active(true) or not $dms_cli health True

4)Onboard the rc xapp using the below command : Make sure that you have the xapp descriptor config file and the schema file at your local file system $dms_cli onboard --config_file_path=config-file.json --shcema_file_path=schema.json After this command: xapp should be created Eg: $dms_cli onboard --config_file_path=config-file.json --shcema_file_path=schema.json { "status": "Created" }

5)List the helm charts from helm repository (Optional) $curl -X GET http://localhost:8090/api/charts | jq . Eg: $curl -X GET http://$(hostname):8090/api/charts | jq . { "rc": [ { "name": "rc", "version": "1.0.0", "description": "Standard xApp Helm Chart", "apiVersion": "v1", "appVersion": "1.0", "urls": [ "charts/rc-1.0.0.tgz" ], "created": "2022-04-20T05:26:37.891030646Z", "digest": "3636f4fba220aab5739d737eb3cd3d74b5012b029bde95f114b05f9eaa786b1f" } ] }

  1. Install the xApp $dms_cli install --xapp_chart_name=XAPP_CHART_NAME --version=VERSION --namespace=NAMESPACE Eg: $dms_cli install --xapp_chart_name=rc --version=1.0.0 --namespace=ricxapp status: OK after this step the xapp should be in running state

       ricxapp       ricxapp-rc-5d8b97d58d-hhznh                                 1/1     Running     1          60m
    
  2. restart rtMgr so rmr is ready