I release step 2 of 2

Change-Id: Iefe36f589b65620f8b7ebfdd8ce31641ea0f4071
Signed-off-by: czichy <thoralf.czichy@nokia.com>
1 file changed
tree: f47bcb4056f18f65ee0a6434659976497d105d75
  1. api/
  2. cmd/
  3. config/
  4. deployment/
  5. docs/
  6. pkg/
  7. releases/
  8. xappKubernetesOperator/
  9. .gitreview
  10. container-tag.yaml
  11. dms-entrypoint.sh
  12. Dockerfile
  13. go.mod
  14. go.sum
  15. INFO.yaml
  16. LICENSE.txt
  17. Makefile
  18. README.md
README.md

RICDMS

Building

Local build and Run

Chekout code for RICDMS repository from gerrit.

$ git clone ssh://subhash_singh@gerrit.o-ran-sc.org:29418/ric-plt/ricdms

build locally

$ make build

Run the executable

$./ricdms
{"ts":1684321663015,"crit":"INFO","id":"ricdms","mdc":{},"msg":"Logger is initialized without config file()."}
{"ts":1684321663023,"crit":"INFO","id":"ricdms","mdc":{},"msg":"Starting server at : 0.0.0.0:8000"}
2023/05/17 11:07:43 Serving r i c d m s at http://[::]:8000

It will start the RICDMS on port :8000

Kubernetes

Build the image

$ make image

Add the changes to deployment/dms-config.yaml as per your environment (refer your .kubeconfig file).

apiVersion: v1
kind: ConfigMap
metadata:
  name: kube-env
data:
  config: |
    apiVersion: v1
    clusters:
    - cluster:
        certificate-authority-data: <certificate>
        server: https://<kube-ip>:<kube-port>
      name: <name>
    contexts:
    - context:
        cluster:<cluster-name>
        user: <user>
      name: <name>
    current-context: <context>
    kind: Config
    preferences: {}
    users:
    - name: <name>
      user:
        client-certificate-data: <cliet-cert> 
        client-key-data: <client-key-data>

Apply the deployment yaml :

$ kubectl apply -f deployment

Make sure that following pod, svc and configmap is created :

$ kubectl get po,svc,config
NAME                                          READY   STATUS    RESTARTS   AGE
pod/dms-server-r2k64                          1/1     Running   0          15s

NAME                             TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
service/ric-dms-service          NodePort    <cluster-IP>    <none>        8000:32625/TCP   15s

NAME                         DATA   AGE
configmap/kube-env           1      90s

Developer Environment

Mocking all the dependent services (chartmuseum, appmgr...)

One can bring moco server to mock environment for development purpose. Mocks are captured in mock folder.

Use below command to bring up the mock server :

$ docker run --rm -d -v /home/ubuntu/osc/ric-plt/ricdms/mock:/var/moco -p 9191:8000 rezzza/docker-moco:latest

Running the RICDMS

Export the enviroment variable to use the URLs from so that mock server could be used.

$ export RIC_DMS_CONFIG_FILE=$(pwd)/config/config-test.yaml

Now, developer environment is ready :computer: