diff --git a/README.md b/README.md index 35c5320..46b44fa 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,66 @@ # oai-ran-operators -OAI RAN operator for Nephio +This repository contains source code for k8s custom operator for OAI RAN functions (CU-CP, CU-UP, DU) which can be deployed in Nephio.
+The operator is currently common for all the RAN functions (CU-CP, CU-UP, DU).
+ +The operator listens to the NFDeployment CRD as shown here:
+https://github.com/nephio-project/api/blob/main/workload/v1alpha1/nf_deployment_types.go.
+The operator decides which Network function the CR is intented for based on the Provider field in the NFDeplymentSpec.
+The operator also retrieves the custom configuration required for the Network function from the NFConfig CR.
+The NFConfig CRD is available here:
+https://github.com/nephio-project/api/blob/main/workload/v1alpha1/nf_config_types.go
+ +An example for the NfDeployment CR for CU-CP is available here:
+https://github.com/nephio-project/catalog/blob/main/workloads/oai/pkg-example-cucp-bp/cucpdeployment.yaml
+The CR also contains the reference to custom configuraton NFConfig CR as part of the parametersRefs.
+Note that this CR is only the initial CR and it will get specialized by Nephio and more fields will added before the CR is applied in the cluster.
+ + +The KPT package used for deploying the RAN operator is located in the nephio/catalog repository.
+ https://github.com/nephio-project/catalog/tree/main/workloads/oai/oai-ran-operator. + +The KPT packages for deploying the RAN Network functions (CU-CP, CU-UP, DU) are located here:
+ https://github.com/nephio-project/catalog/tree/main/workloads/oai + +Note that dynamic updates of the NFdeployment CR is currently not supported by the operator. + +The directory structure of this repository is as follows:
+ +```bash +. +├── Dockerfile +├── LICENSE +├── Makefile +├── OWNERS +├── README.md +├── api +│   └── v1alpha1 +│   ├── oai_ran_nf_types.go +│   ├── plmn_types.go +│   └── ranconfig_types.go +├── cmd +│   └── main.go +├── go.mod +├── go.sum +└── internal + └── controller + ├── helper.go + ├── helper_test.go + ├── interface_configs.go + ├── mock_Client_test.go + ├── mock_NfResource_test.go + ├── network_attachment_defination_test.go + ├── network_attachment_definitions.go + ├── randeployment_controller.go + ├── randeployment_controller_test.go + ├── resources_cucp.go + ├── resources_cucp_test.go + ├── resources_cuup.go + ├── resources_cuup_test.go + ├── resources_du.go + ├── resources_du_test.go + └── templates.go + +``` + +More details on how to deploy the controllers and the RAN Network functions using Nephio is described here: https://github.com/nephio-project/catalog/blob/main/workloads/oai/README.md \ No newline at end of file