From f5f08bb2f576cd28aee60435e45d618f479455f2 Mon Sep 17 00:00:00 2001 From: Carlos Giraldo Date: Mon, 27 Sep 2021 09:35:54 +0200 Subject: [PATCH 1/2] oai-gnb initial commit --- charts/oai-gnb/Chart.yaml | 26 ++ charts/oai-gnb/resources/config.yaml | 0 charts/oai-gnb/resources/gnb.sa.tdd.conf | 300 ++++++++++++++++++++++ charts/oai-gnb/templates/_helpers.tpl | 14 + charts/oai-gnb/templates/configmap.yaml | 16 ++ charts/oai-gnb/templates/service.yaml | 29 +++ charts/oai-gnb/templates/statefulset.yaml | 78 ++++++ charts/oai-gnb/values.yaml | 166 ++++++++++++ 8 files changed, 629 insertions(+) create mode 100644 charts/oai-gnb/Chart.yaml create mode 100644 charts/oai-gnb/resources/config.yaml create mode 100644 charts/oai-gnb/resources/gnb.sa.tdd.conf create mode 100644 charts/oai-gnb/templates/_helpers.tpl create mode 100644 charts/oai-gnb/templates/configmap.yaml create mode 100644 charts/oai-gnb/templates/service.yaml create mode 100644 charts/oai-gnb/templates/statefulset.yaml create mode 100644 charts/oai-gnb/values.yaml diff --git a/charts/oai-gnb/Chart.yaml b/charts/oai-gnb/Chart.yaml new file mode 100644 index 000000000..46ad7bf2b --- /dev/null +++ b/charts/oai-gnb/Chart.yaml @@ -0,0 +1,26 @@ +annotations: + category: apps +apiVersion: v2 +appVersion: 2021.w32 +dependencies: + - name: common + repository: https://charts.bitnami.com/bitnami + tags: + - bitnami-common + version: 1.x.x +description: description +engine: gotpl +home: source_url +icon: image_url +keywords: + - apps + - gradiant + - k8s +maintainers: + - email: admin@gradiant.org + name: Gradiant +name: oai-gnb +sources: + - source_url +version: 0.2.0 + diff --git a/charts/oai-gnb/resources/config.yaml b/charts/oai-gnb/resources/config.yaml new file mode 100644 index 000000000..e69de29bb diff --git a/charts/oai-gnb/resources/gnb.sa.tdd.conf b/charts/oai-gnb/resources/gnb.sa.tdd.conf new file mode 100644 index 000000000..79b1d22dc --- /dev/null +++ b/charts/oai-gnb/resources/gnb.sa.tdd.conf @@ -0,0 +1,300 @@ +Active_gNBs = ( "{{ .Values.gnb.gnbName }}"); +# Asn1_verbosity, choice in: none, info, annoying +Asn1_verbosity = "none"; + +gNBs = +( + { + ////////// Identification parameters: + gNB_ID = 0xe00; + gNB_name = "{{ .Values.gnb.gnbName }}"; + + // Tracking area code, 0x0000 and 0xfffe are reserved values + tracking_area_code = {{ .Values.gnb.tac }}; + plmn_list = ({ + mcc = {{ .Values.gnb.mcc }}; + mnc = {{ .Values.gnb.mnc }}; + mnc_length = {{ .Values.gnb.mncLength }}; + snssaiList = ( + { + sst = {{ .Values.gnb.sst }}; + sd = 0x{{ .Values.gnb.sd0 }}; // 0 false, else true + }, + { + sst = {{ .Values.gnb.sst }}; + sd = 0x{{ .Values.gnb.sd1 }}; // 0 false, else true + } + ); + + }); + + nr_cellid = 12345678L; + + ////////// Physical parameters: + + ssb_SubcarrierOffset = 0; + pdsch_AntennaPorts = 1; + pusch_AntennaPorts = 1; + + pdcch_ConfigSIB1 = ( + { + controlResourceSetZero = 12; + searchSpaceZero = 0; + } + ); + + servingCellConfigCommon = ( + { + #spCellConfigCommon + + physCellId = 0; + +# downlinkConfigCommon + #frequencyInfoDL + # this is 3600 MHz + 43 PRBs@30kHz SCS (same as initial BWP) + absoluteFrequencySSB = 641280; + dl_frequencyBand = 78; + # this is 3600 MHz + dl_absoluteFrequencyPointA = 640008; + #scs-SpecificCarrierList + dl_offstToCarrier = 0; +# subcarrierSpacing +# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120 + dl_subcarrierSpacing = 1; + dl_carrierBandwidth = 106; + #initialDownlinkBWP + #genericParameters + # this is RBstart=27,L=48 (275*(L-1))+RBstart + initialDLBWPlocationAndBandwidth = 12952; # 6366 12925 12956 28875 12952 +# subcarrierSpacing +# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120 + initialDLBWPsubcarrierSpacing = 1; + #pdcch-ConfigCommon + initialDLBWPcontrolResourceSetZero = 12; + initialDLBWPsearchSpaceZero = 0; + #pdsch-ConfigCommon + #pdschTimeDomainAllocationList (up to 16 entries) + initialDLBWPk0_0 = 0; #for DL slot + initialDLBWPmappingType_0 = 0; #0=typeA,1=typeB + initialDLBWPstartSymbolAndLength_0 = 40; #this is SS=1,L=13 + + initialDLBWPk0_1 = 0; #for mixed slot + initialDLBWPmappingType_1 = 0; + initialDLBWPstartSymbolAndLength_1 = 57; #this is SS=1,L=5 + + #uplinkConfigCommon + #frequencyInfoUL + ul_frequencyBand = 78; + #scs-SpecificCarrierList + ul_offstToCarrier = 0; +# subcarrierSpacing +# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120 + ul_subcarrierSpacing = 1; + ul_carrierBandwidth = 106; + pMax = 20; + #initialUplinkBWP + #genericParameters + initialULBWPlocationAndBandwidth = 12952; +# subcarrierSpacing +# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120 + initialULBWPsubcarrierSpacing = 1; + #rach-ConfigCommon + #rach-ConfigGeneric + prach_ConfigurationIndex = 98; +#prach_msg1_FDM +#0 = one, 1=two, 2=four, 3=eight + prach_msg1_FDM = 0; + prach_msg1_FrequencyStart = 0; + zeroCorrelationZoneConfig = 13; + preambleReceivedTargetPower = -96; +#preamblTransMax (0...10) = (3,4,5,6,7,8,10,20,50,100,200) + preambleTransMax = 6; +#powerRampingStep +# 0=dB0,1=dB2,2=dB4,3=dB6 + powerRampingStep = 1; +#ra_ReponseWindow +#1,2,4,8,10,20,40,80 + ra_ResponseWindow = 4; +#ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR +#1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen + ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR = 4; +#oneHalf (0..15) 4,8,12,16,...60,64 + ssb_perRACH_OccasionAndCB_PreamblesPerSSB = 14; +#ra_ContentionResolutionTimer +#(0..7) 8,16,24,32,40,48,56,64 + ra_ContentionResolutionTimer = 7; + rsrp_ThresholdSSB = 19; +#prach-RootSequenceIndex_PR +#1 = 839, 2 = 139 + prach_RootSequenceIndex_PR = 2; + prach_RootSequenceIndex = 1; + # SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex + # + msg1_SubcarrierSpacing = 1, +# restrictedSetConfig +# 0=unrestricted, 1=restricted type A, 2=restricted type B + restrictedSetConfig = 0, + + # pusch-ConfigCommon (up to 16 elements) + initialULBWPk2_0 = 6; # used for UL slot + initialULBWPmappingType_0 = 1 + initialULBWPstartSymbolAndLength_0 = 41; # this is SS=0 L=13 + + initialULBWPk2_1 = 6; # used for mixed slot + initialULBWPmappingType_1 = 1; + initialULBWPstartSymbolAndLength_1 = 52; # this is SS=10 L=4 + + initialULBWPk2_2 = 7; # used for Msg.3 during RA + initialULBWPmappingType_2 = 1; + initialULBWPstartSymbolAndLength_2 = 52; # this is SS=10 L=4 + + msg3_DeltaPreamble = 1; + p0_NominalWithGrant =-90; + +# pucch-ConfigCommon setup : +# pucchGroupHopping +# 0 = neither, 1= group hopping, 2=sequence hopping + pucchGroupHopping = 0; + hoppingId = 40; + p0_nominal = -90; +# ssb_PositionsInBurs_BitmapPR +# 1=short, 2=medium, 3=long + ssb_PositionsInBurst_PR = 2; + ssb_PositionsInBurst_Bitmap = 1; + +# ssb_periodicityServingCell +# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1 + ssb_periodicityServingCell = 2; + +# dmrs_TypeA_position +# 0 = pos2, 1 = pos3 + dmrs_TypeA_Position = 0; + +# subcarrierSpacing +# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120 + subcarrierSpacing = 1; + + + #tdd-UL-DL-ConfigurationCommon +# subcarrierSpacing +# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120 + referenceSubcarrierSpacing = 1; + # pattern1 + # dl_UL_TransmissionPeriodicity + # 0=ms0p5, 1=ms0p625, 2=ms1, 3=ms1p25, 4=ms2, 5=ms2p5, 6=ms5, 7=ms10 + dl_UL_TransmissionPeriodicity = 6; + nrofDownlinkSlots = 7; + nrofDownlinkSymbols = 6; + nrofUplinkSlots = 2; + nrofUplinkSymbols = 4; + + ssPBCH_BlockPower = -25; + } + + ); + + + # ------- SCTP definitions + SCTP : + { + # Number of streams to use in input/output + SCTP_INSTREAMS = 2; + SCTP_OUTSTREAMS = 2; + }; + + + ////////// MME parameters: + amf_ip_address = ( { ipv4 = "@AMF_IP_ADDRESS@"; + ipv6 = "192:168:30::17"; + active = "yes"; + preference = "ipv4"; + } + ); + + + NETWORK_INTERFACES : + { + GNB_INTERFACE_NAME_FOR_NG_AMF = "@GNB_NGA_IF_NAME@"; + GNB_IPV4_ADDRESS_FOR_NG_AMF = "@GNB_NGA_IP_ADDRESS@"; + GNB_INTERFACE_NAME_FOR_NGU = "@GNB_NGU_IF_NAME@"; + GNB_IPV4_ADDRESS_FOR_NGU = "@GNB_NGU_IP_ADDRESS@"; + GNB_PORT_FOR_S1U = 2152; # Spec 2152 + }; + + } +); + +MACRLCs = ( + { + num_cc = 1; + tr_s_preference = "local_L1"; + tr_n_preference = "local_RRC"; + ulsch_max_slots_inactivity = 100; + pusch_TargetSNRx10 = 200; + pucch_TargetSNRx10 = 200; + } +); + +L1s = ( + { + num_cc = 1; + tr_n_preference = "local_mac"; + pusch_proc_threads = 8; + } +); + +RUs = ( + { + local_rf = "yes" + nb_tx = 1 + nb_rx = 1 + att_tx = 0 + att_rx = 0; + bands = [7]; + max_pdschReferenceSignalPower = -27; + max_rxgain = 81; + eNB_instances = [0]; + #beamforming 1x4 matrix: + bf_weights = [0x00007fff, 0x0000, 0x0000, 0x0000]; + #clock_src = "external"; + #sdr_addrs = "mgmt_addr=192.168.18.240,addr=192.168.10.2,second_addr=192.168.20.2,clock_source=internal,time_source=internal" + } +); + +THREAD_STRUCT = ( + { + #three config for level of parallelism "PARALLEL_SINGLE_THREAD", "PARALLEL_RU_L1_SPLIT", or "PARALLEL_RU_L1_TRX_SPLIT" + parallel_config = "PARALLEL_SINGLE_THREAD"; + #two option for worker "WORKER_DISABLE" or "WORKER_ENABLE" + worker_config = "WORKER_ENABLE"; + } +); + +rfsimulator : +{ + serveraddr = "server"; + serverport = "4043"; + options = (); #("saviq"); or/and "chanmod" + modelname = "AWGN"; + IQfile = "/tmp/rfsimulator.iqs"; +}; + + log_config : + { + global_log_level ="info"; + global_log_verbosity ="medium"; + hw_log_level ="info"; + hw_log_verbosity ="medium"; + phy_log_level ="info"; + phy_log_verbosity ="medium"; + mac_log_level ="info"; + mac_log_verbosity ="high"; + rlc_log_level ="info"; + rlc_log_verbosity ="medium"; + pdcp_log_level ="info"; + pdcp_log_verbosity ="medium"; + rrc_log_level ="info"; + rrc_log_verbosity ="medium"; + ngap_log_level ="debug"; + ngap_log_verbosity ="medium"; + }; diff --git a/charts/oai-gnb/templates/_helpers.tpl b/charts/oai-gnb/templates/_helpers.tpl new file mode 100644 index 000000000..cca0df363 --- /dev/null +++ b/charts/oai-gnb/templates/_helpers.tpl @@ -0,0 +1,14 @@ + +{{/* +Return the proper oai-gnb image name +*/}} +{{- define "oai-gnb.image" -}} +{{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) }} +{{- end -}} + +{{/* +Return the proper Docker Image Registry Secret Names +*/}} +{{- define "oai-gnb.imagePullSecrets" -}} +{{- include "common.images.pullSecrets" (dict "images" (list .Values.image) "global" .Values.global) -}} +{{- end -}} \ No newline at end of file diff --git a/charts/oai-gnb/templates/configmap.yaml b/charts/oai-gnb/templates/configmap.yaml new file mode 100644 index 000000000..159667c18 --- /dev/null +++ b/charts/oai-gnb/templates/configmap.yaml @@ -0,0 +1,16 @@ + +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "common.names.fullname" . }} + namespace: {{ .Release.Namespace | quote }} + labels: {{- include "common.labels.standard" . | nindent 4 }} + {{- if .Values.commonLabels }} + {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} + {{- end }} + {{- if .Values.commonAnnotations }} + annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} + {{- end }} +data: + gnb.sa.tdd.conf: | +{{ tpl (.Files.Get "resources/gnb.sa.tdd.conf") . | indent 4 }} diff --git a/charts/oai-gnb/templates/service.yaml b/charts/oai-gnb/templates/service.yaml new file mode 100644 index 000000000..425ac4920 --- /dev/null +++ b/charts/oai-gnb/templates/service.yaml @@ -0,0 +1,29 @@ + +apiVersion: v1 +kind: Service +metadata: + name: {{ include "common.names.fullname" . }} + namespace: {{ .Release.Namespace | quote }} + labels: {{- include "common.labels.standard" . | nindent 4 }} + {{- if .Values.commonLabels }} + {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} + {{- end }} + {{- if .Values.commonAnnotations }} + annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} + {{- end }} +spec: + type: {{ .Values.service.type }} + {{- if (or (eq .Values.service.type "LoadBalancer") (eq .Values.service.type "NodePort")) }} + externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy | quote }} + {{- end }} + {{ if eq .Values.service.type "LoadBalancer" }} + loadBalancerSourceRanges: {{ .Values.service.loadBalancerSourceRanges }} + {{ end }} + {{- if (and (eq .Values.service.type "LoadBalancer") (not (empty .Values.service.loadBalancerIP))) }} + loadBalancerIP: {{ .Values.service.loadBalancerIP }} + {{- end }} + ports: + - name: http + port: 80 + protocol: TCP + selector: {{- include "common.labels.matchLabels" . | nindent 4 }} diff --git a/charts/oai-gnb/templates/statefulset.yaml b/charts/oai-gnb/templates/statefulset.yaml new file mode 100644 index 000000000..138e845fe --- /dev/null +++ b/charts/oai-gnb/templates/statefulset.yaml @@ -0,0 +1,78 @@ + +apiVersion: {{ include "common.capabilities.statefulset.apiVersion" . }} +kind: StatefulSet +metadata: + name: {{ include "common.names.fullname" . }} + namespace: {{ .Release.Namespace | quote }} + labels: {{- include "common.labels.standard" . | nindent 4 }} + {{- if .Values.commonLabels }} + {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} + {{- end }} + {{- if .Values.commonAnnotations }} + annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} + {{- end }} +spec: + replicas: {{ .Values.replicaCount }} + selector: + matchLabels: {{ include "common.labels.matchLabels" . | nindent 6 }} + serviceName: {{ template "common.names.fullname" . }} + {{- if .Values.updateStrategy }} + updateStrategy: {{- toYaml .Values.updateStrategy | nindent 4 }} + {{- end }} + template: + metadata: + {{- if .Values.podAnnotations }} + annotations: {{- include "common.tplvalues.render" (dict "value" .Values.podAnnotations "context" $) | nindent 8 }} + {{- end }} + labels: {{- include "common.labels.standard" . | nindent 8 }} + {{- if .Values.podLabels }} + {{- include "common.tplvalues.render" (dict "value" .Values.podLabels "context" $) | nindent 8 }} + {{- end }} + spec: + {{- include "oai-gnb.imagePullSecrets" . | nindent 6 }} + {{- if .Values.affinity }} + affinity: {{- include "common.tplvalues.render" ( dict "value" .Values.affinity "context" $) | nindent 8 }} + {{- end }} + {{- if .Values.nodeSelector }} + nodeSelector: {{- include "common.tplvalues.render" ( dict "value" .Values.nodeSelector "context" $) | nindent 8 }} + {{- end }} + {{- if .Values.tolerations }} + tolerations: {{- include "common.tplvalues.render" (dict "value" .Values.tolerations "context" .) | nindent 8 }} + {{- end }} + {{- if .Values.podSecurityContext.enabled }} + securityContext: {{- omit .Values.podSecurityContext "enabled" | toYaml | nindent 8 }} + {{- end }} + containers: + - name: oai-gnb + image: {{ template "oai-gnb.image" . }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + {{- if .Values.containerSecurityContext.enabled }} + securityContext: {{- omit .Values.containerSecurityContext "enabled" | toYaml | nindent 12 }} + {{- end }} + args: + - /opt/oai/bin/nr-softmodem.Rel15 + - -E + - --sa + - -O + - /oai.conf + env: + - name: CONFIG_TEMPLATE_PATH + value: /opt/oai/etc/gnb.sa.tdd.conf + #- name: USE_B2XX + # value: "true" + - name: GNB_NGA_IF_NAME + value: "eth0" + - name: GNB_NGU_IF_NAME + value: "eth0" + - name: AMF_HOSTNAME + value: {{ .Values.gnb.amf }} + {{- if .Values.resources }} + resources: {{- toYaml .Values.resources | nindent 12 }} + {{- end }} + volumeMounts: + - name: config + mountPath: /opt/oai/etc + volumes: + - name: config + configMap: + name: {{ template "common.names.fullname" . }} diff --git a/charts/oai-gnb/values.yaml b/charts/oai-gnb/values.yaml new file mode 100644 index 000000000..07061d79b --- /dev/null +++ b/charts/oai-gnb/values.yaml @@ -0,0 +1,166 @@ +## @section Global parameters +## Global Docker image parameters +## Please, note that this will override the image parameters, including dependencies, configured to use the global value +## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass + +## @param global.imageRegistry Global Docker image registry +## @param global.imagePullSecrets Global Docker registry secret names as an array +## @param global.storageClass Global StorageClass for Persistent Volume(s) +## +global: + imageRegistry: + ## E.g. + ## imagePullSecrets: + ## - myRegistryKeySecretName + ## + imagePullSecrets: [] + storageClass: + +## @section Common parameters + +## @param kubeVersion Override Kubernetes version +## +kubeVersion: +## @param nameOverride String to partially override common.names.fullname +## +nameOverride: +## @param fullnameOverride String to fully override common.names.fullname +## +fullnameOverride: +## @param commonLabels Labels to add to all deployed objects +## +commonLabels: {} +## @param commonAnnotations Annotations to add to all deployed objects +## +commonAnnotations: {} +## @param clusterDomain Kubernetes cluster domain name +## +clusterDomain: cluster.local +## @param extraDeploy Array of extra objects to deploy with the release +## +extraDeploy: [] + + +image: + registry: docker.io + repository: openverso/oai + tag: 2021.w36 + ## Specify a imagePullPolicy + ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' + ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images + ## + pullPolicy: IfNotPresent + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## e.g: + ## pullSecrets: + ## - myRegistryKeySecretName + ## + pullSecrets: [] + ## Enable debug mode + ## + debug: false + +replicaCount: 1 + + +gnb: + gnbName: Gradiant + mcc: '901' + mnc: '70' + mncLength: '2' + tac: '0001' + sst: '1' + sd0: '0' + sd1: '0' + # -- hostname of the amf core service. + amf: "amf" + +## resource requests and limits +## ref: http://kubernetes.io/docs/user-guide/compute-resources/ +## resources.limits the resources limits for the containers +## resources.requests the requested resources for the containers +## mme: mme +resources: + limits: + ettus.com/usrp: 1 + +## Configure Pods Security Context +## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod +## @param podsecuritycontext.enabled enabled pods' Security Context +## @param podsecuritycontext.fsgroup set pod's Security Context fsGroup +## +podSecurityContext: + enabled: false + fsGroup: 1001 +## Configure Container Security Context +## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod +## @param containersecuritycontext.enabled enabled containers' Security Context +## @param containersecuritycontext.runasuser set containers' Security Context runAsUser +## +containerSecurityContext: + enabled: true + privileged: true + # runAsUser: 1001 + +## @param podlabels extra labels for pods +## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ +## +podLabels: {} +## @param podannotations annotations for pods +## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ +## +podAnnotations: {} + +## @param .affinity affinity for pods assignment +## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity +## NOTE: `podaffinitypreset`, and `nodeAffinityPreset` will be ignored when it's set +## +affinity: {} +## @param nodeselector node labels for pods assignment +## ref: https://kubernetes.io/docs/user-guide/node-selection/ +## +nodeSelector: {} +## @param tolerations tolerations pods assignment +## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ +## +tolerations: [] +## @param updatestrategy.type statefulset strategy type +## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies +## +updateStrategy: + ## StrategyType + ## Can be set to RollingUpdate or OnDelete + ## + type: RollingUpdate + +## @section Traffic Exposure Parameters + +service: + ## @param service.type service type + ## + type: ClusterIP + ## @param service.clusterIP service Cluster IP + ## e.g.: + ## clusterIP: None + ## + clusterIP: + ## @param service.loadBalancerIP service Load Balancer IP + ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-loadbalancer + ## + loadBalancerIP: + ## @param service.loadBalancerSourceRanges service Load Balancer sources + ## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service + ## e.g: + ## loadBalancerSourceRanges: + ## - 10.10.10.0/24 + ## + loadBalancerSourceRanges: [] + ## @param service.externalTrafficPolicy service external traffic policy + ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip + ## + externalTrafficPolicy: Cluster + ## @param service.annotations Additional custom annotations for service + ## + annotations: {} \ No newline at end of file From 4b81670f01fa8286c657289359abf25242138af8 Mon Sep 17 00:00:00 2001 From: Carlos Giraldo Date: Mon, 27 Sep 2021 09:49:41 +0200 Subject: [PATCH 2/2] linting oai-gnb --- charts/oai-gnb/Chart.yaml | 7 +++---- charts/oai-gnb/values.yaml | 3 +-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/charts/oai-gnb/Chart.yaml b/charts/oai-gnb/Chart.yaml index 46ad7bf2b..be5952423 100644 --- a/charts/oai-gnb/Chart.yaml +++ b/charts/oai-gnb/Chart.yaml @@ -10,8 +10,8 @@ dependencies: version: 1.x.x description: description engine: gotpl -home: source_url -icon: image_url +home: https://openairinterface.org/ +icon: https://openairinterface.org/wp-content/uploads/2020/11/cropped-android-chrome-512x512-1-270x270.png keywords: - apps - gradiant @@ -21,6 +21,5 @@ maintainers: name: Gradiant name: oai-gnb sources: - - source_url + - https://gitlab.eurecom.fr/oai/openairinterface5g/ version: 0.2.0 - diff --git a/charts/oai-gnb/values.yaml b/charts/oai-gnb/values.yaml index 07061d79b..2578891ed 100644 --- a/charts/oai-gnb/values.yaml +++ b/charts/oai-gnb/values.yaml @@ -64,7 +64,6 @@ image: replicaCount: 1 - gnb: gnbName: Gradiant mcc: '901' @@ -163,4 +162,4 @@ service: externalTrafficPolicy: Cluster ## @param service.annotations Additional custom annotations for service ## - annotations: {} \ No newline at end of file + annotations: {}