Improve oran_oom helm charts
Refactor oran_oom helm charts to utilize common templates and values files
Fix ics var data foler perm with init container
Fix dmaapmediator by add init container to create topics
Move dmaapmediator env var to values file
Change-Id: I65ebf62553520458b714c88eb33106ec5503292f
Signed-off-by: Louis Li <gamerslouis@gmail.com>
diff --git a/smo-install/helm-override/cnf/oran-override.yaml b/smo-install/helm-override/cnf/oran-override.yaml
index d000c29..222a8bd 100644
--- a/smo-install/helm-override/cnf/oran-override.yaml
+++ b/smo-install/helm-override/cnf/oran-override.yaml
@@ -61,24 +61,22 @@
ingressClassName: kong
informationservice:
- informationservice:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be for instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
- size: 2Gi
- storageClassName: ics-storage
- ingress:
- enabled: true
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be for instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
+ size: 2Gi
+ storageClassName: ics-storage
+ ingress:
+ enabled: true
# Need to check the external port Availability
policymanagementservice:
- policymanagementservice:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be fon instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
- size: 2Gi
- storageClassName: pms-storage
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be fon instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
+ size: 2Gi
+ storageClassName: pms-storage
ingress:
enabled: true
@@ -89,16 +87,14 @@
enabled: true
helmmanager:
- helmmanager:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed si>
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be f>
- storageClassName: helmmanager-storage
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed si>
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be f>
+ storageClassName: helmmanager-storage
controlpanel:
- controlpanel:
- ingress:
- enabled: false
+ ingress:
+ enabled: false
oru-app:
simulators:
diff --git a/smo-install/helm-override/default/oran-override.yaml b/smo-install/helm-override/default/oran-override.yaml
index d40e97a..222a8bd 100644
--- a/smo-install/helm-override/default/oran-override.yaml
+++ b/smo-install/helm-override/default/oran-override.yaml
@@ -61,24 +61,22 @@
ingressClassName: kong
informationservice:
- informationservice:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be for instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
- size: 2Gi
- storageClassName: ics-storage
- ingress:
- enabled: true
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be for instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
+ size: 2Gi
+ storageClassName: ics-storage
+ ingress:
+ enabled: true
# Need to check the external port Availability
policymanagementservice:
- policymanagementservice:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be fon instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
- size: 2Gi
- storageClassName: pms-storage
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be fon instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
+ size: 2Gi
+ storageClassName: pms-storage
ingress:
enabled: true
@@ -89,16 +87,14 @@
enabled: true
helmmanager:
- helmmanager:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed si>
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be f>
- storageClassName: helmmanager-storage
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed si>
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be f>
+ storageClassName: helmmanager-storage
controlpanel:
- controlpanel:
- ingress:
- enabled: false
+ ingress:
+ enabled: false
oru-app:
simulators:
diff --git a/smo-install/helm-override/pythonsdk-tests/oran-override.yaml b/smo-install/helm-override/pythonsdk-tests/oran-override.yaml
index b722d13..58eded0 100644
--- a/smo-install/helm-override/pythonsdk-tests/oran-override.yaml
+++ b/smo-install/helm-override/pythonsdk-tests/oran-override.yaml
@@ -61,24 +61,22 @@
ingressClassName: kong
informationservice:
- informationservice:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be for instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
- size: 2Gi
- storageClassName: ics-storage
- ingress:
- enabled: true
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be for instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
+ size: 2Gi
+ storageClassName: ics-storage
+ ingress:
+ enabled: true
# Need to check the external port Availability
policymanagementservice:
- policymanagementservice:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be fon instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
- size: 2Gi
- storageClassName: pms-storage
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed size should be the same.
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be fon instance 'standard' or 'gluster-fs' (depeneds on which classes that are available)
+ size: 2Gi
+ storageClassName: pms-storage
ingress:
enabled: true
@@ -89,16 +87,14 @@
enabled: true
helmmanager:
- helmmanager:
- persistence:
- # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed si>
- # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be f>
- storageClassName: helmmanager-storage
+ persistence:
+ # Either refer to a volume created under the nonrtric by storageClassName. Then the claimed si>
+ # The alternative use a dynamic volume provisioner in the cluster. Storage class can then be f>
+ storageClassName: helmmanager-storage
controlpanel:
- controlpanel:
- ingress:
- enabled: false
+ ingress:
+ enabled: false
oru-app:
simulators:
diff --git a/smo-install/oran_oom/a1controller/Chart.yaml b/smo-install/oran_oom/a1controller/Chart.yaml
index a2e0688..53f199f 100644
--- a/smo-install/oran_oom/a1controller/Chart.yaml
+++ b/smo-install/oran_oom/a1controller/Chart.yaml
@@ -23,4 +23,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/a1controller/templates/deployment.yaml b/smo-install/oran_oom/a1controller/templates/deployment.yaml
index 86bc466..d1a646b 100644
--- a/smo-install/oran_oom/a1controller/templates/deployment.yaml
+++ b/smo-install/oran_oom/a1controller/templates/deployment.yaml
@@ -16,41 +16,22 @@
kind: Deployment
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.a1controller" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.a1controller" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
- replicas: {{ .Values.a1controller.replicaCount }}
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.a1controller" . }}
- release: {{ .Release.Name }}
+ replicas: {{ .Values.replicaCount }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.a1controller" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.a1controller" . }}
+ hostname: {{ include "common.name" . }}
containers:
- - name: {{ include "common.containername.a1controller" . }}
- image: {{ .Values.a1controller.image.registry }}/{{ .Values.a1controller.image.name }}:{{ .Values.a1controller.image.tag }}
- imagePullPolicy: {{ .Values.a1controller.imagePullPolicy }}
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
command:
- /opt/onap/sdnc/bin/startODL.sh
- ports:
- - containerPort: {{ .Values.a1controller.service.targetPort1 }}
- protocol: TCP
- - containerPort: {{ .Values.a1controller.service.targetPort2 }}
- protocol: TCP
+ ports: {{- include "common.containerPorts" . | nindent 10 }}
+ {{- include "common.tcpsocketProbes" . | nindent 10 }}
env:
- name: MYSQL_ROOT_PASSWORD
value: 'itsASecret'
@@ -80,32 +61,16 @@
value: 'a1adapter'
- name: AAI_TRUSTSTORE_PASSWORD
value: 'changeit'
- readinessProbe:
- tcpSocket:
- port: {{ .Values.a1controller.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.a1controller.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.a1controller.readiness.periodSeconds }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.a1controller.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.a1controller.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.a1controller.liveness.periodSeconds }}
---
apiVersion: apps/v1
kind: Deployment
-metadata:
- name: db
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: db
+metadata: {{- include "common.resourceMetadata" (dict "suffix" "db" "dot" . ) | nindent 2 }}
+{{ $selectorsCtx := dict "matchLabels" (dict "app.kubernetes.io/component" "db") "dot" . }}
+{{ $templateMetadataCtx := dict "labels" (dict "app.kubernetes.io/component" "db") "dot" . }}
spec:
- selector:
- matchLabels:
- app: db
+ selector: {{- include "common.selectors" $selectorsCtx | nindent 4 }}
template:
- metadata:
- labels:
- app: db
+ metadata: {{- include "common.templateMetadata" $templateMetadataCtx | nindent 6 }}
spec:
containers:
- name: sdnc-db-container
diff --git a/smo-install/oran_oom/a1controller/templates/service.yaml b/smo-install/oran_oom/a1controller/templates/service.yaml
index 5259bb8..be38ac4 100644
--- a/smo-install/oran_oom/a1controller/templates/service.yaml
+++ b/smo-install/oran_oom/a1controller/templates/service.yaml
@@ -14,53 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.a1controller" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.a1controller" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- type: ClusterIP
- ports:
- {{if eq .Values.a1controller.service.allowHttp true -}}
- - name: {{ index .Values.a1controller.service.httpName }}
- port: {{ .Values.a1controller.service.internalPort1 }}
- targetPort: {{ .Values.a1controller.service.targetPort1 }}
- protocol: TCP
- {{- end }}
- - name: {{ index .Values.a1controller.service.httpsName }}
- port: {{ .Values.a1controller.service.internalPort2 }}
- targetPort: {{ .Values.a1controller.service.targetPort2 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.a1controller" . }}
- release: {{ .Release.Name }}
----
-apiVersion: v1
-kind: Service
-metadata:
- name: dbhost
- namespace: {{ include "common.namespace.nonrtric" . }}
-spec:
- ports:
- - port: 3306
- targetPort: 3306
- selector:
- app: db
----
-apiVersion: v1
-kind: Service
-metadata:
- name: sdnctldb01
- namespace: {{ include "common.namespace.nonrtric" . }}
-spec:
- ports:
- - port: 3306
- targetPort: 3306
- selector:
- app: db
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/a1controller/values.yaml b/smo-install/oran_oom/a1controller/values.yaml
index 28bd09c..bae7cfb 100644
--- a/smo-install/oran_oom/a1controller/values.yaml
+++ b/smo-install/oran_oom/a1controller/values.yaml
@@ -17,24 +17,24 @@
# Default values for a1controller.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-a1controller:
- imagePullPolicy: IfNotPresent
- image:
- registry: 'nexus3.onap.org:10002/onap'
- name: sdnc-image
- tag: 2.1.6
- replicaCount: 1
- service:
- allowHttp: true
- httpName: http
- internalPort1: 8282
- targetPort1: 8181
- httpsName: https
- internalPort2: 8383
- targetPort2: 8443
- liveness:
- initialDelaySeconds: 300
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 60
- periodSeconds: 10
+imagePullPolicy: IfNotPresent
+image:
+ registry: 'nexus3.onap.org:10002/onap'
+ name: sdnc-image
+ tag: 2.1.6
+replicaCount: 1
+service:
+ type: ClusterIP
+ ports:
+ - name: http
+ internalPort: 8282
+ targetPort: 8181
+ name_tls: https
+ internalPort_tls: 8383
+ targetPort_tls: 8443
+liveness:
+ initialDelaySeconds: 300
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 60
+ periodSeconds: 10
diff --git a/smo-install/oran_oom/a1simulator/Chart.yaml b/smo-install/oran_oom/a1simulator/Chart.yaml
index d4570a4..daa3758 100644
--- a/smo-install/oran_oom/a1simulator/Chart.yaml
+++ b/smo-install/oran_oom/a1simulator/Chart.yaml
@@ -7,4 +7,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/aux-common/templates/_ingress.tpl b/smo-install/oran_oom/aux-common/templates/_ingress.tpl
index b4afe63..5851de8 100644
--- a/smo-install/oran_oom/aux-common/templates/_ingress.tpl
+++ b/smo-install/oran_oom/aux-common/templates/_ingress.tpl
@@ -81,4 +81,4 @@
{{- end -}}
{{- end -}}
{{- end -}}
-{{- end -}}
\ No newline at end of file
+{{- end -}}
diff --git a/smo-install/oran_oom/aux-common/templates/_namespace.tpl b/smo-install/oran_oom/aux-common/templates/_namespace.tpl
index 94c9ee7..a1971ad 100644
--- a/smo-install/oran_oom/aux-common/templates/_namespace.tpl
+++ b/smo-install/oran_oom/aux-common/templates/_namespace.tpl
@@ -14,13 +14,6 @@
# limitations under the License.
*/}}
-{{/*
- Resolve the namespace to apply to a chart. The default namespace suffix
- is the name of the chart. This can be overridden if necessary (eg. for subcharts)
- using the following value:
-
- - .Values.nsPrefix : override namespace prefix
-*/}}
{{- define "common.namespace" -}}
- {{- default .Release.Namespace .Values.nsPrefix -}}
+{{- .Release.Namespace -}}
{{- end -}}
diff --git a/smo-install/oran_oom/aux-common/templates/_service.tpl b/smo-install/oran_oom/aux-common/templates/_service.tpl
index 77b77d0..ececa62 100644
--- a/smo-install/oran_oom/aux-common/templates/_service.tpl
+++ b/smo-install/oran_oom/aux-common/templates/_service.tpl
@@ -28,4 +28,4 @@
{{- define "common.servicename" -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- default $name .Values.service.name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
\ No newline at end of file
+{{- end -}}
diff --git a/smo-install/oran_oom/controlpanel/templates/configmap.yaml b/smo-install/oran_oom/controlpanel/templates/configmap.yaml
index cf0f7da..2847f21 100644
--- a/smo-install/oran_oom/controlpanel/templates/configmap.yaml
+++ b/smo-install/oran_oom/controlpanel/templates/configmap.yaml
@@ -17,15 +17,9 @@
apiVersion: v1
kind: ConfigMap
metadata:
- name: {{ include "common.name.controlpanel" . }}-configmap
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.controlpanel" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
+ {{ include "common.resourceMetadata" (dict "suffix" "configmap" "dot" . ) | nindent 2 }}
data:
-{{ if eq .Values.controlpanel.ingress.enabled false }}
+{{ if eq .Values.ingress.enabled false }}
{{ tpl (.Files.Glob "resources-ngw/*").AsConfig . | indent 2 }}
{{ else }}
{{ tpl (.Files.Glob "resources-ing/*").AsConfig . | indent 2 }}
diff --git a/smo-install/oran_oom/controlpanel/templates/deployment.yaml b/smo-install/oran_oom/controlpanel/templates/deployment.yaml
index eb8fcce..ff93fd5 100644
--- a/smo-install/oran_oom/controlpanel/templates/deployment.yaml
+++ b/smo-install/oran_oom/controlpanel/templates/deployment.yaml
@@ -16,55 +16,26 @@
kind: Deployment
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.controlpanel" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.controlpanel" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
- replicas: {{ .Values.controlpanel.replicaCount }}
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.controlpanel" . }}
- release: {{ .Release.Name }}
+ replicas: {{ .Values.replicaCount }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.controlpanel" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.controlpanel" . }}
+ hostname: {{ include "common.name" . }}
containers:
- - name: {{ include "common.containername.controlpanel" . }}
- image: {{ .Values.controlpanel.image.registry }}/{{ .Values.controlpanel.image.name }}:{{ .Values.controlpanel.image.tag }}
- imagePullPolicy: {{ .Values.controlpanel.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.controlpanel.service.targetPort1 }}
- protocol: TCP
- - containerPort: {{ .Values.controlpanel.service.targetPort2 }}
- protocol: TCP
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 10 }}
+ {{- include "common.tcpsocketProbes" . | nindent 10 }}
volumeMounts:
- name: configmap
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
readOnly: true
- readinessProbe:
- tcpSocket:
- port: {{ .Values.controlpanel.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.controlpanel.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.controlpanel.liveness.periodSeconds }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.controlpanel.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.controlpanel.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.controlpanel.liveness.periodSeconds }}
volumes:
- name: configmap
configMap:
- name: {{ include "common.name.controlpanel" . }}-configmap
\ No newline at end of file
+ name: {{ include "common.name" . }}-configmap
diff --git a/smo-install/oran_oom/controlpanel/templates/service.yaml b/smo-install/oran_oom/controlpanel/templates/service.yaml
index 1a61ed7..be38ac4 100644
--- a/smo-install/oran_oom/controlpanel/templates/service.yaml
+++ b/smo-install/oran_oom/controlpanel/templates/service.yaml
@@ -14,31 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.controlpanel" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.controlpanel" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- type: NodePort
- ports:
- {{if eq .Values.controlpanel.service.allowHttp true -}}
- - name: {{ index .Values.controlpanel.service.httpName }}
- port: {{ .Values.controlpanel.service.internalPort1 }}
- targetPort: {{ .Values.controlpanel.service.targetPort1 }}
- nodePort: {{ .Values.controlpanel.service.externalPort1 }}
- protocol: TCP
- {{- end }}
- - name: {{ index .Values.controlpanel.service.httpsName }}
- port: {{ .Values.controlpanel.service.internalPort2 }}
- targetPort: {{ .Values.controlpanel.service.targetPort2 }}
- nodePort: {{ .Values.controlpanel.service.externalPort2 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.controlpanel" . }}
- release: {{ .Release.Name }}
\ No newline at end of file
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/controlpanel/values.yaml b/smo-install/oran_oom/controlpanel/values.yaml
index fe4f2e3..f1d439a 100644
--- a/smo-install/oran_oom/controlpanel/values.yaml
+++ b/smo-install/oran_oom/controlpanel/values.yaml
@@ -18,29 +18,31 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-controlpanel:
- imagePullPolicy: IfNotPresent
- image:
- registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
- name: nonrtric-controlpanel
- tag: 2.5.0
- replicaCount: 1
- service:
- allowHttp: true
- httpName: http
- internalPort1: 8182
- targetPort1: 8080
- externalPort1: 30091
- httpsName: https
- internalPort2: 8082
- targetPort2: 8082
- externalPort2: 30092
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
+imagePullPolicy: IfNotPresent
+image:
+ registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
+ name: nonrtric-controlpanel
+ tag: 2.5.0
+replicaCount: 1
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
- ingress:
- enabled: true
+service:
+ type: NodePort
+ ports:
+ - name: http
+ internalPort: "8182"
+ targetPort: "8080"
+ nodePort: "30091"
+ name_tls: https
+ internalPort_tls: "8082"
+ targetPort_tls: "8082"
+ nodePort_tls: "30092"
+
+
+ingress:
+ enabled: true
diff --git a/smo-install/oran_oom/dmaapadapterservice/Chart.yaml b/smo-install/oran_oom/dmaapadapterservice/Chart.yaml
index 15d22c4..14558b1 100644
--- a/smo-install/oran_oom/dmaapadapterservice/Chart.yaml
+++ b/smo-install/oran_oom/dmaapadapterservice/Chart.yaml
@@ -23,4 +23,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/dmaapadapterservice/resources/config/application.yaml b/smo-install/oran_oom/dmaapadapterservice/resources/config/application.yaml
deleted file mode 100644
index f2d5e59..0000000
--- a/smo-install/oran_oom/dmaapadapterservice/resources/config/application.yaml
+++ /dev/null
@@ -1,84 +0,0 @@
-################################################################################
-# Copyright (c) 2021 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-spring:
- profiles:
- active: prod
- main:
- allow-bean-definition-overriding: true
- aop:
- auto: false
-management:
- endpoints:
- web:
- exposure:
- # Enabling of springboot actuator features. See springboot documentation.
- include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
-springdoc:
- show-actuator: true
-logging:
- # Configuration of logging
- level:
- ROOT: ERROR
- org.springframework: ERROR
- org.springframework.data: ERROR
- org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
- org.oran.dmaapadapter: DEBUG
- file:
- name: /var/log/dmaap-adapter-service/application.log
-server:
- # Configuration of the HTTP/REST server. The parameters are defined and handeled by the springboot framework.
- # See springboot documentation.
- port : 8435
- http-port: 8084
- ssl:
- key-store-type: JKS
- key-store-password: policy_agent
- key-store: /opt/app/dmaap-adapter-service/etc/cert/keystore.jks
- key-password: policy_agent
- key-alias: policy_agent
-app:
- webclient:
- # Configuration of the trust store used for the HTTP client (outgoing requests)
- # The file location and the password for the truststore is only relevant if trust-store-used == true
- # Note that the same keystore as for the server is used.
- trust-store-used: false
- trust-store-password: policy_agent
- trust-store: /opt/app/dmaap-adapter-service/etc/cert/truststore.jks
- # Configuration of usage of HTTP Proxy for the southbound accesses.
- # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s
- http.proxy-host:
- http.proxy-port: 0
- ics-base-url: https://informationservice.nonrtric:9083
- # Location of the component configuration file. The file will only be used if the Consul database is not used;
- # configuration from the Consul will override the file.
- configuration-filepath: /opt/app/dmaap-adapter-service/data/application_configuration.json
- dmaap-base-url: http://message-router.onap:3904
- # The url used to adress this component. This is used as a callback url sent to other components.
- dmaap-adapter-base-url: https://dmaapadapterservice.nonrtric:9088
- # KAFKA boostrap server. This is only needed if there are Information Types that uses a kafkaInputTopic
- kafka:
- bootstrap-servers: message-router-kafka.onap:9092
- # If the file name is empty, no authorization token is used
- auth-token-file:
- pm-files-path: /tmp
- zip-output: false
- s3:
- endpointOverride: http://localhost:9000
- accessKeyId: minio
- secretAccessKey: miniostorage
- locksBucket: ropfilelocks
- bucket: ropfiles
\ No newline at end of file
diff --git a/smo-install/oran_oom/dmaapadapterservice/resources/data/application_configuration.json b/smo-install/oran_oom/dmaapadapterservice/resources/data/application_configuration.json
deleted file mode 100644
index 137e353..0000000
--- a/smo-install/oran_oom/dmaapadapterservice/resources/data/application_configuration.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "types": [
- {
- "id": "ExampleInformationType",
- "dmaapTopicUrl": "/events/unauthenticated.dmaapadp.json/dmaapadapterproducer/msgs?timeout=15000&limit=100",
- "useHttpProxy": false
- },
- {
- "id": "ExampleInformationTypeKafka",
- "kafkaInputTopic": "unauthenticated.dmaapadp_kafka.text",
- "useHttpProxy": false
- }
- ]
- }
diff --git a/smo-install/oran_oom/dmaapadapterservice/templates/configmap.yaml b/smo-install/oran_oom/dmaapadapterservice/templates/configmap.yaml
index e055213..cbd8da9 100644
--- a/smo-install/oran_oom/dmaapadapterservice/templates/configmap.yaml
+++ b/smo-install/oran_oom/dmaapadapterservice/templates/configmap.yaml
@@ -15,28 +15,11 @@
################################################################################
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.name.dmaapadapterservice" . }}-configmap-config
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapadapterservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+{{ include "common.applicationConfigmap" . }}
---
apiVersion: v1
kind: ConfigMap
-metadata:
- name: {{ include "common.name.dmaapadapterservice" . }}-configmap-data
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapadapterservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
+metadata: {{ include "common.resourceMetadata" (dict "suffix" "type-configmap" "dot" . ) | nindent 2 }}
data:
-{{ tpl (.Files.Glob "resources/data/*").AsConfig . | indent 2 }}
+ type_config.json: |
+ {{- (dict "types" .Values.types) | toRawJson | nindent 4 }}
diff --git a/smo-install/oran_oom/dmaapadapterservice/templates/service.yaml b/smo-install/oran_oom/dmaapadapterservice/templates/service.yaml
index b2f0ad6..48461eb 100644
--- a/smo-install/oran_oom/dmaapadapterservice/templates/service.yaml
+++ b/smo-install/oran_oom/dmaapadapterservice/templates/service.yaml
@@ -14,29 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.dmaapadapterservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapadapterservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- ports:
- {{if eq .Values.dmaapadapterservice.service.allowHttp true -}}
- - name: {{ index .Values.dmaapadapterservice.service.httpName }}
- port: {{ .Values.dmaapadapterservice.service.internalPort1 }}
- targetPort: {{ .Values.dmaapadapterservice.service.targetPort1 }}
- protocol: TCP
- {{- end }}
- - name: {{ index .Values.dmaapadapterservice.service.httpsName }}
- port: {{ .Values.dmaapadapterservice.service.internalPort2 }}
- targetPort: {{ .Values.dmaapadapterservice.service.targetPort2 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapadapterservice" . }}
- release: {{ .Release.Name }}
- type: ClusterIP
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/dmaapadapterservice/templates/statefulset.yaml b/smo-install/oran_oom/dmaapadapterservice/templates/statefulset.yaml
index bc28297..aff1a27 100644
--- a/smo-install/oran_oom/dmaapadapterservice/templates/statefulset.yaml
+++ b/smo-install/oran_oom/dmaapadapterservice/templates/statefulset.yaml
@@ -16,59 +16,28 @@
kind: StatefulSet
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.dmaapadapterservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapadapterservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
- serviceName: {{ include "common.name.dmaapadapterservice" . }}
+ serviceName: {{ include "common.name" . }}
replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapadapterservice" . }}
- release: {{ .Release.Name }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapadapterservice" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.dmaapadapterservice" . }}
+ hostname: {{ include "common.name" . }}
containers:
- - name: {{ include "common.container.dmaapadapterservice" . }}
- image: {{ .Values.dmaapadapterservice.image.registry }}/{{ .Values.dmaapadapterservice.image.name }}:{{ .Values.dmaapadapterservice.image.tag }}
- imagePullPolicy: {{ .Values.dmaapadapterservice.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.dmaapadapterservice.service.targetPort1 }}
- protocol: TCP
- - containerPort: {{ .Values.dmaapadapterservice.service.targetPort2 }}
- protocol: TCP
- readinessProbe:
- tcpSocket:
- port: {{ .Values.dmaapadapterservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.dmaapadapterservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.dmaapadapterservice.liveness.periodSeconds }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.dmaapadapterservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.dmaapadapterservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.dmaapadapterservice.liveness.periodSeconds }}
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 8 }}
+ {{- include "common.tcpsocketProbes" . | nindent 8 }}
volumeMounts:
- - name: {{ include "common.name.dmaapadapterservice" . }}-dmaapadapter-config
+ - name: {{ include "common.applicationConfigMountName" . }}
mountPath: /opt/app/dmaap-adapter-service/config
- - name: {{ include "common.name.dmaapadapterservice" . }}-dmaapadapter-data
+ - name: {{ include "common.name" . }}-dmaapadapter-data
mountPath: /opt/app/dmaap-adapter-service/data
volumes:
- - name: {{ include "common.name.dmaapadapterservice" . }}-dmaapadapter-config
+ {{- include "common.applicationConfigVolume" . | nindent 8 }}
+ - name: {{ include "common.name" . }}-dmaapadapter-data
configMap:
- name: {{ include "common.name.dmaapadapterservice" . }}-configmap-config
- - name: {{ include "common.name.dmaapadapterservice" . }}-dmaapadapter-data
- configMap:
- name: {{ include "common.name.dmaapadapterservice" . }}-configmap-data
+ name: {{ include "common.name" . }}-type-configmap
diff --git a/smo-install/oran_oom/dmaapadapterservice/values.yaml b/smo-install/oran_oom/dmaapadapterservice/values.yaml
index 38e5e0b..40665dc 100644
--- a/smo-install/oran_oom/dmaapadapterservice/values.yaml
+++ b/smo-install/oran_oom/dmaapadapterservice/values.yaml
@@ -18,23 +18,101 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-dmaapadapterservice:
- imagePullPolicy: IfNotPresent
- image:
- registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
- name: "nonrtric-plt-dmaapadapter"
- tag: 1.3.0
- service:
- allowHttp: true
- httpName: http
- internalPort1: 9087
- targetPort1: 8084
- httpsName: https
- internalPort2: 9088
- targetPort2: 8435
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
+imagePullPolicy: IfNotPresent
+image:
+ registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
+ name: "nonrtric-plt-dmaapadapter"
+ tag: 1.3.0
+service:
+ type: ClusterIP
+ ports:
+ - name: http
+ internalPort: 9087
+ targetPort: 8084
+ name_tls: https
+ internalPort_tls: 9088
+ targetPort_tls: 8435
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+
+types:
+ - id: "ExampleInformationType"
+ dmaapTopicUrl: "/events/unauthenticated.dmaapadp.json/dmaapadapterproducer/msgs?timeout=15000&limit=100"
+ useHttpProxy: false
+ - id: "ExampleInformationTypeKafka"
+ kafkaInputTopic: "unauthenticated.dmaapadp_kafka.text"
+ useHttpProxy: false
+
+application:
+ spring:
+ profiles:
+ active: prod
+ main:
+ allow-bean-definition-overriding: true
+ aop:
+ auto: false
+ management:
+ endpoints:
+ web:
+ exposure:
+ # Enabling of springboot actuator features. See springboot documentation.
+ include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
+ springdoc:
+ show-actuator: true
+ logging:
+ # Configuration of logging
+ level:
+ ROOT: ERROR
+ org.springframework: ERROR
+ org.springframework.data: ERROR
+ org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
+ org.oran.dmaapadapter: DEBUG
+ file:
+ name: /var/log/dmaap-adapter-service/application.log
+ server:
+ # Configuration of the HTTP/REST server. The parameters are defined and handeled by the springboot framework.
+ # See springboot documentation.
+ port : 8435
+ http-port: 8084
+ ssl:
+ key-store-type: JKS
+ key-store-password: policy_agent
+ key-store: /opt/app/dmaap-adapter-service/etc/cert/keystore.jks
+ key-password: policy_agent
+ key-alias: policy_agent
+ app:
+ webclient:
+ # Configuration of the trust store used for the HTTP client (outgoing requests)
+ # The file location and the password for the truststore is only relevant if trust-store-used == true
+ # Note that the same keystore as for the server is used.
+ trust-store-used: false
+ trust-store-password: policy_agent
+ trust-store: /opt/app/dmaap-adapter-service/etc/cert/truststore.jks
+ # Configuration of usage of HTTP Proxy for the southbound accesses.
+ # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s
+ http.proxy-host:
+ http.proxy-port: 0
+ ics-base-url: https://informationservice.nonrtric:9083
+ # Location of the component configuration file. The file will only be used if the Consul database is not used;
+ # configuration from the Consul will override the file.
+ configuration-filepath: /opt/app/dmaap-adapter-service/data/application_configuration.json
+ dmaap-base-url: http://message-router.onap:3904
+ # The url used to adress this component. This is used as a callback url sent to other components.
+ dmaap-adapter-base-url: https://dmaapadapterservice.nonrtric:9088
+ # KAFKA boostrap server. This is only needed if there are Information Types that uses a kafkaInputTopic
+ kafka:
+ bootstrap-servers: message-router-kafka.onap:9092
+ # If the file name is empty, no authorization token is used
+ auth-token-file:
+ pm-files-path: /tmp
+ zip-output: false
+ s3:
+ endpointOverride: http://localhost:9000
+ accessKeyId: minio
+ secretAccessKey: miniostorage
+ locksBucket: ropfilelocks
+ bucket: ropfiles
diff --git a/smo-install/oran_oom/dmaapmediatorservice/resources/config/application.yaml b/smo-install/oran_oom/dmaapmediatorservice/resources/config/application.yaml
deleted file mode 100644
index 75b11ad..0000000
--- a/smo-install/oran_oom/dmaapmediatorservice/resources/config/application.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-spring:
- profiles:
- active: prod
- main:
- allow-bean-definition-overriding: true
- aop:
- auto: false
-management:
- endpoints:
- web:
- exposure:
- include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
-
-logging:
- level:
- ROOT: ERROR
- org.springframework: ERROR
- org.springframework.data: ERROR
- org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
- org.oransc.enrichment: INFO
- file:
- name: /var/log/enrichment-coordinator-service/application.log
-server:
- port : 8434
- http-port: 8083
- ssl:
- key-store-type: JKS
- key-store-password: policy_agent
- key-store: /opt/app/enrichment-coordinator-service/etc/cert/keystore.jks
- key-password: policy_agent
- key-alias: policy_agent
-app:
- filepath: /opt/app/enrichment-coordinator-service/data/application_configuration.json
- webclient:
- trust-store-used: false
- trust-store-password: policy_agent
- trust-store: /opt/app/enrichment-coordinator-service/etc/cert/truststore.jks
- vardata-directory: /var/enrichment-coordinator-service
\ No newline at end of file
diff --git a/smo-install/oran_oom/dmaapmediatorservice/resources/data/type_config.json b/smo-install/oran_oom/dmaapmediatorservice/resources/data/type_config.json
deleted file mode 100644
index 3a82a95..0000000
--- a/smo-install/oran_oom/dmaapmediatorservice/resources/data/type_config.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "types":
- [
- {
- "id": "STD_Fault_Messages",
- "dmaapTopicUrl": "/events/unauthenticated.dmaapmed.json/dmaapmediatorproducer/STD_Fault_Messages?timeout=15000&limit=100"
- },
- {
- "id": "VES_Fault_Messages",
- "dmaapTopicUrl": "/events/unauthenticated.SEC_FAULT_OUTPUT/dmaapmediatorproducer/VES_Fault_Messages?timeout=15000&limit=100"
- }
- ]
- }
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_common.tpl b/smo-install/oran_oom/dmaapmediatorservice/resources/dmaap-topic-init.sh
similarity index 72%
copy from smo-install/oran_oom/nonrtric-common/templates/_common.tpl
copy to smo-install/oran_oom/dmaapmediatorservice/resources/dmaap-topic-init.sh
index af3226f..be8c6c8 100644
--- a/smo-install/oran_oom/nonrtric-common/templates/_common.tpl
+++ b/smo-install/oran_oom/dmaapmediatorservice/resources/dmaap-topic-init.sh
@@ -1,5 +1,6 @@
+#!/bin/sh
################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
+# Copyright (c) 2024 NYCU WINLab. #
# #
# Licensed under the Apache License, Version 2.0 (the "License"); #
# you may not use this file except in compliance with the License. #
@@ -14,6 +15,13 @@
# limitations under the License. #
################################################################################
-{{- define "common.namespace.nonrtric" -}}
- {{- default .Release.Namespace .Values.nsPrefix -}}
-{{- end -}}
+topics='{{ .Values.dmaapTopicInit.topics | toRawJson }}'
+
+echo $topics | jq -c '.[]' | while read -r obj; do
+ curl -X POST -H "Content-Type: application/json" -d "$obj" {{ .Values.dmaapTopicInit.dmaapMrAddr }}/topics/create
+ response=$?
+ if [ $response -ne 0 ]; then
+ echo "Failed to create topic $obj"
+ exit 1
+ fi
+done
diff --git a/smo-install/oran_oom/dmaapmediatorservice/templates/_helpers.tpl b/smo-install/oran_oom/dmaapmediatorservice/templates/_helpers.tpl
new file mode 100644
index 0000000..4f3b0b1
--- /dev/null
+++ b/smo-install/oran_oom/dmaapmediatorservice/templates/_helpers.tpl
@@ -0,0 +1,47 @@
+{{/*
+################################################################################
+# Copyright (c) 2024 NYCU WINLab. #
+# #
+# 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. #
+################################################################################
+*/}}
+
+{{- define "dmaapTopic.initContainer" -}}
+- name: dmaap-topic-init
+ image: alpine:3.19.1
+ command:
+ - sh
+ - -c
+ - apk add --no-cache curl jq; sh /app/dmaap-topic-init.sh;
+ volumeMounts:
+ - name: dmaap-topic-init
+ mountPath: /app
+{{- end -}}
+
+{{- define "dmaapTopic.initConfigMap" -}}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.name" . }}-dmaap-topic-init
+ namespace: {{ include "common.namespace" . }}
+ labels: {{- include "common.labels" . | nindent 4 }}
+data:
+ dmaap-topic-init.sh: |
+ {{- tpl (.Files.Get "resources/dmaap-topic-init.sh") . | nindent 4 }}
+{{- end }}
+
+{{- define "dmaapTopic.initVolume" -}}
+- name: dmaap-topic-init
+ configMap:
+ name: {{ include "common.name" . }}-dmaap-topic-init
+{{- end }}
diff --git a/smo-install/oran_oom/dmaapmediatorservice/templates/configmap.yaml b/smo-install/oran_oom/dmaapmediatorservice/templates/configmap.yaml
index 8958996..2dce181 100644
--- a/smo-install/oran_oom/dmaapmediatorservice/templates/configmap.yaml
+++ b/smo-install/oran_oom/dmaapmediatorservice/templates/configmap.yaml
@@ -17,13 +17,12 @@
apiVersion: v1
kind: ConfigMap
-metadata:
- name: {{ include "common.name.dmaapmediatorservice" . }}-configmap-data
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapmediatorservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
+metadata: {{ include "common.resourceMetadata" (dict "suffix" "type-configmap" "dot" . ) | nindent 2 }}
data:
-{{ tpl (.Files.Glob "resources/data/*").AsConfig . | indent 2 }}
+ type_config.json: |
+ {{- (dict "types" .Values.types) | toRawJson | nindent 4 }}
+---
+{{ if .Values.dmaapTopicInit.enabled -}}
+{{ include "dmaapTopic.initConfigMap" . }}
+---
+{{- end -}}
diff --git a/smo-install/oran_oom/dmaapmediatorservice/templates/service.yaml b/smo-install/oran_oom/dmaapmediatorservice/templates/service.yaml
index d09fde4..48461eb 100644
--- a/smo-install/oran_oom/dmaapmediatorservice/templates/service.yaml
+++ b/smo-install/oran_oom/dmaapmediatorservice/templates/service.yaml
@@ -14,29 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.dmaapmediatorservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapmediatorservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- ports:
- {{if eq .Values.dmaapmediatorservice.service.allowHttp true -}}
- - name: {{ index .Values.dmaapmediatorservice.service.httpName }}
- port: {{ .Values.dmaapmediatorservice.service.internalPort1 }}
- targetPort: {{ .Values.dmaapmediatorservice.service.targetPort1 }}
- protocol: TCP
- {{- end }}
- - name: {{ index .Values.dmaapmediatorservice.service.httpsName }}
- port: {{ .Values.dmaapmediatorservice.service.internalPort2 }}
- targetPort: {{ .Values.dmaapmediatorservice.service.targetPort2 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapmediatorservice" . }}
- release: {{ .Release.Name }}
- type: ClusterIP
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/dmaapmediatorservice/templates/statefulset.yaml b/smo-install/oran_oom/dmaapmediatorservice/templates/statefulset.yaml
index c8df034..e3211e2 100644
--- a/smo-install/oran_oom/dmaapmediatorservice/templates/statefulset.yaml
+++ b/smo-install/oran_oom/dmaapmediatorservice/templates/statefulset.yaml
@@ -1,82 +1,59 @@
-################################################################################
-# Copyright (c) 2021 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-kind: StatefulSet
-apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.dmaapmediatorservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapmediatorservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
-spec:
- serviceName: {{ include "common.name.dmaapmediatorservice" . }}
- replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapmediatorservice" . }}
- release: {{ .Release.Name }}
- template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.dmaapmediatorservice" . }}
- release: {{ .Release.Name }}
- spec:
- hostname: {{ include "common.name.dmaapmediatorservice" . }}
- containers:
- - name: {{ include "common.container.dmaapmediatorservice" . }}
- image: {{ .Values.dmaapmediatorservice.image.registry }}/{{ .Values.dmaapmediatorservice.image.name }}:{{ .Values.dmaapmediatorservice.image.tag }}
- imagePullPolicy: {{ .Values.dmaapmediatorservice.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.dmaapmediatorservice.service.targetPort1 }}
- protocol: TCP
- - containerPort: {{ .Values.dmaapmediatorservice.service.targetPort2 }}
- protocol: TCP
- readinessProbe:
- tcpSocket:
- port: {{ .Values.dmaapmediatorservice.service.targetPort2 }}
- initialDelaySeconds: {{ .Values.dmaapmediatorservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.dmaapmediatorservice.liveness.periodSeconds }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.dmaapmediatorservice.service.targetPort2 }}
- initialDelaySeconds: {{ .Values.dmaapmediatorservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.dmaapmediatorservice.liveness.periodSeconds }}
- volumeMounts:
- - name: {{ include "common.name.dmaapmediatorservice" . }}-dmaapmediator-data
- mountPath: /configs/type_config.json
- subPath: type_config.json
-
- env:
- - name: INFO_PRODUCER_HOST
- value: https://{{ include "common.name.dmaapmediatorservice" . }}
- - name: INFO_PRODUCER_PORT
- value: "{{ .Values.dmaapmediatorservice.service.internalPort2 }}"
- - name: INFO_COORD_ADDR
- value: https://informationservice:9083
- - name: DMAAP_MR_ADDR
- value: http://message-router.onap:3904
- - name: LOG_LEVEL
- value: Info
- volumes:
- - name: {{ include "common.name.dmaapmediatorservice" . }}-dmaapmediator-data
- configMap:
- name: {{ include "common.name.dmaapmediatorservice" . }}-configmap-data
+################################################################################
+# Copyright (c) 2021 Nordix Foundation. #
+# #
+# 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. #
+################################################################################
+
+kind: StatefulSet
+apiVersion: apps/v1
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
+spec:
+ serviceName: {{ include "common.name" . }}
+ replicas: 1
+ selector: {{- include "common.selectors" . | nindent 4 }}
+ template:
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
+ spec:
+ hostname: {{ include "common.name" . }}
+ {{- if .Values.dmaapTopicInit.enabled }}
+ initContainers: {{- include "dmaapTopic.initContainer" . | nindent 6 }}
+ {{- end }}
+ containers:
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 8 }}
+ {{- /* Only the info producer port is active */ -}}
+ {{- include "common.tcpsocketProbes" (dict "port" ((first .Values.service.ports).internalPort_tls) "dot" .) | nindent 8 }}
+ volumeMounts:
+ - name: {{ include "common.name" . }}-dmaapmediator-data
+ mountPath: /configs/type_config.json
+ subPath: type_config.json
+ env:
+ - name: INFO_PRODUCER_HOST
+ value: "{{ default (print "https://" ( include "common.name" . )) .Values.infoProducerHost }}"
+ - name: INFO_PRODUCER_PORT
+ value: "{{ default (first .Values.service.ports).internalPort_tls .Values.infoProducerPort }}"
+ - name: INFO_COORD_ADDR
+ value: "{{ .Values.infoCoordinatorAddr }}"
+ - name: DMAAP_MR_ADDR
+ value: "{{ .Values.dmaapMrAddr }}"
+ - name: LOG_LEVEL
+ value: "{{ .Values.logLevel }}"
+ volumes:
+ - name: {{ include "common.name" . }}-dmaapmediator-data
+ configMap:
+ name: {{ include "common.name" . }}-type-configmap
+ {{- if .Values.dmaapTopicInit.enabled -}}
+ {{- include "dmaapTopic.initVolume" . | nindent 8 }}
+ {{- end }}
diff --git a/smo-install/oran_oom/dmaapmediatorservice/values.yaml b/smo-install/oran_oom/dmaapmediatorservice/values.yaml
index bec03b9..7acf5e6 100644
--- a/smo-install/oran_oom/dmaapmediatorservice/values.yaml
+++ b/smo-install/oran_oom/dmaapmediatorservice/values.yaml
@@ -18,23 +18,46 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-dmaapmediatorservice:
- imagePullPolicy: IfNotPresent
- image:
- registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
- name: "nonrtric-plt-dmaapmediatorproducer"
- tag: 1.2.0
- service:
- allowHttp: true
- httpName: http
- internalPort1: 8085
- targetPort1: 8085
- httpsName: https
- internalPort2: 8185
- targetPort2: 8185
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
+imagePullPolicy: IfNotPresent
+image:
+ registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
+ name: "nonrtric-plt-dmaapmediatorproducer"
+ tag: 1.2.0
+service:
+ type: ClusterIP
+ ports:
+ - name: http
+ internalPort: 8085
+ targetPort: 8085
+ name_tls: https
+ internalPort_tls: 8185
+ targetPort_tls: 8185
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+
+logLevel: INFO
+dmaapMrAddr: http://message-router.onap:3904
+infoCoordinatorAddr: https://informationservice:9083
+
+types:
+ - id: STD_Fault_Messages
+ dmaapTopicUrl: "/events/unauthenticated.dmaapmed.json/dmaapmediatorproducer/STD_Fault_Messages?timeout=15000&limit=100"
+ - id: VES_Fault_Messages
+ dmaapTopicUrl: "/events/unauthenticated.SEC_FAULT_OUTPUT/dmaapmediatorproducer/VES_Fault_Messages?timeout=15000&limit=100"
+
+dmaapTopicInit:
+ enabled: true
+ dmaapMrAddr: http://message-router.onap:3904
+ topics:
+ - topicName: unauthenticated.dmaapmed.json
+ topicDescription: STD_Fault_Messages
+ partitionCount: 1
+ replicationCount: 1
+ - topicName: unauthenticated.SEC_FAULT_OUTPUT
+ topicDescription: VES_Fault_Messages
+ partitionCount: 1
+ replicationCount: 1
diff --git a/smo-install/oran_oom/helmmanager/Chart.yaml b/smo-install/oran_oom/helmmanager/Chart.yaml
index 511176b..26aa796 100644
--- a/smo-install/oran_oom/helmmanager/Chart.yaml
+++ b/smo-install/oran_oom/helmmanager/Chart.yaml
@@ -22,4 +22,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/helmmanager/templates/service.yaml b/smo-install/oran_oom/helmmanager/templates/service.yaml
index 90ae614..48461eb 100644
--- a/smo-install/oran_oom/helmmanager/templates/service.yaml
+++ b/smo-install/oran_oom/helmmanager/templates/service.yaml
@@ -13,23 +13,5 @@
# See the License for the specific language governing permissions and #
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.helmmanager" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.helmmanager" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- ports:
- - name: {{ index .Values.helmmanager.service.httpName }}
- port: {{ .Values.helmmanager.service.internalPort1 }}
- targetPort: {{ .Values.helmmanager.service.targetPort1 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.helmmanager" . }}
- release: {{ .Release.Name }}
- type: ClusterIP
+
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/helmmanager/templates/serviceaccount.yaml b/smo-install/oran_oom/helmmanager/templates/serviceaccount.yaml
index 60c081d..a2f4242 100644
--- a/smo-install/oran_oom/helmmanager/templates/serviceaccount.yaml
+++ b/smo-install/oran_oom/helmmanager/templates/serviceaccount.yaml
@@ -18,26 +18,21 @@
apiVersion: v1
kind: ServiceAccount
metadata:
- name: {{ include "common.namespace.nonrtric" . }}-helm-manager-sa
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.helmmanager" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
-
+ name: {{ include "common.namespace" . }}-helm-manager-sa
+ namespace: {{ include "common.namespace" . }}
+ labels: {{- include "common.labels" . | nindent 4 }}
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
- name: {{ include "common.namespace.nonrtric" . }}-helm-manager-sa-clusterrolebinding
- namespace: {{ include "common.namespace.nonrtric" . }}
+ name: {{ include "common.namespace" . }}-helm-manager-sa-clusterrolebinding
+ namespace: {{ include "common.namespace" . }}
+ labels: {{- include "common.labels" . | nindent 4 }}
subjects:
- kind: ServiceAccount
- name: {{ include "common.namespace.nonrtric" . }}-helm-manager-sa
- namespace: {{ include "common.namespace.nonrtric" . }}
+ name: {{ include "common.namespace" . }}-helm-manager-sa
+ namespace: {{ include "common.namespace" . }}
roleRef:
kind: ClusterRole
- name: {{ .Values.helmmanager.clusterRoleName }}
+ name: {{ .Values.clusterRoleName }}
apiGroup: rbac.authorization.k8s.io
diff --git a/smo-install/oran_oom/helmmanager/templates/statefulset.yaml b/smo-install/oran_oom/helmmanager/templates/statefulset.yaml
index d980ecb..25e361c 100644
--- a/smo-install/oran_oom/helmmanager/templates/statefulset.yaml
+++ b/smo-install/oran_oom/helmmanager/templates/statefulset.yaml
@@ -16,58 +16,22 @@
kind: StatefulSet
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.helmmanager" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.helmmanager" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
-
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
- serviceName: {{ include "common.name.helmmanager" . }}
+ serviceName: {{ include "common.name" . }}
replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.helmmanager" . }}
- release: {{ .Release.Name }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.helmmanager" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.helmmanager" . }}
+ hostname: {{ include "common.name" . }}
containers:
- - name: {{ include "common.container.helmmanager" . }}
- image: {{ .Values.helmmanager.image.registry }}/{{ .Values.helmmanager.image.name }}:{{ .Values.helmmanager.image.tag }}
- imagePullPolicy: {{ .Values.helmmanager.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.helmmanager.service.targetPort1 }}
- protocol: TCP
- readinessProbe:
- tcpSocket:
- port: {{ .Values.helmmanager.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.helmmanager.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.helmmanager.liveness.periodSeconds }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.helmmanager.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.helmmanager.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.helmmanager.liveness.periodSeconds }}
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 8 }}
+ {{- include "common.tcpsocketProbes" . | nindent 8 }}
volumeMounts:
- - name: {{ include "common.name.helmmanager" . }}-vardata
+ - name: {{ include "common.vardataMountName" . }}
mountPath: "/var/helm-manager-service"
- volumeClaimTemplates:
- - metadata:
- name: {{ include "common.name.helmmanager" . }}-vardata
- spec:
- accessModes:
- - ReadWriteOnce
- storageClassName: "{{ .Values.helmmanager.persistence.storageClassName }}"
- resources:
- requests:
- storage: "{{ .Values.helmmanager.persistence.size }}"
+ volumeClaimTemplates: {{- include "common.vardataVolumeClaimTemplate" . | nindent 4 }}
diff --git a/smo-install/oran_oom/helmmanager/values.yaml b/smo-install/oran_oom/helmmanager/values.yaml
index fe194e7..d21d38c 100644
--- a/smo-install/oran_oom/helmmanager/values.yaml
+++ b/smo-install/oran_oom/helmmanager/values.yaml
@@ -18,23 +18,24 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-helmmanager:
- clusterRoleName: cluster-admin
- imagePullPolicy: IfNotPresent
- image:
- registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
- name: "nonrtric-plt-helmmanager"
- tag: 1.3.0
- service:
- httpName: http
- internalPort1: 8112
- targetPort1: 8083
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
- persistence:
- size: 1Gi
- storageClassName: standard
+clusterRoleName: cluster-admin
+imagePullPolicy: IfNotPresent
+image:
+ registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
+ name: "nonrtric-plt-helmmanager"
+ tag: 1.3.0
+service:
+ type: ClusterIP
+ ports:
+ - name: http
+ internalPort: "8112"
+ targetPort: "8083"
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+persistence:
+ size: 1Gi
+ storageClassName: standard
diff --git a/smo-install/oran_oom/informationservice/Chart.yaml b/smo-install/oran_oom/informationservice/Chart.yaml
index 900578d..2ce8040 100644
--- a/smo-install/oran_oom/informationservice/Chart.yaml
+++ b/smo-install/oran_oom/informationservice/Chart.yaml
@@ -23,4 +23,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/informationservice/resources/config/application.yaml b/smo-install/oran_oom/informationservice/resources/config/application.yaml
deleted file mode 100644
index 38bf7f0..0000000
--- a/smo-install/oran_oom/informationservice/resources/config/application.yaml
+++ /dev/null
@@ -1,58 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-spring:
- profiles:
- active: prod
- main:
- allow-bean-definition-overriding: true
- aop:
- auto: false
-management:
- endpoints:
- web:
- exposure:
- include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
-
-logging:
- level:
- ROOT: ERROR
- org.springframework: ERROR
- org.springframework.data: ERROR
- org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
- org.oransc.information: INFO
- file:
- name: /var/log/information-coordinator-service/application.log
-server:
- port : 8434
- http-port: 8083
- ssl:
- key-store-type: JKS
- key-store-password: policy_agent
- key-store: /opt/app/information-coordinator-service/etc/cert/keystore.jks
- key-password: policy_agent
- key-alias: policy_agent
-app:
- filepath: /opt/app/information-coordinator-service/data/application_configuration.json
- webclient:
- trust-store-used: false
- trust-store-password: policy_agent
- trust-store: /opt/app/information-coordinator-service/etc/cert/truststore.jks
- # Configuration of usage of HTTP Proxy for the southbound accesses.
- # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s
- http.proxy-host:
- http.proxy-port: 0
- vardata-directory: /var/information-coordinator-service
diff --git a/smo-install/oran_oom/informationservice/templates/configmap.yaml b/smo-install/oran_oom/informationservice/templates/configmap.yaml
index 4d4df9f..269b2d7 100644
--- a/smo-install/oran_oom/informationservice/templates/configmap.yaml
+++ b/smo-install/oran_oom/informationservice/templates/configmap.yaml
@@ -14,16 +14,4 @@
# limitations under the License. #
################################################################################
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.name.informationservice" . }}-configmap
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.informationservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+{{ include "common.applicationConfigmap" . }}
diff --git a/smo-install/oran_oom/informationservice/templates/ingress.yaml b/smo-install/oran_oom/informationservice/templates/ingress.yaml
index d872407..63ac9ec 100644
--- a/smo-install/oran_oom/informationservice/templates/ingress.yaml
+++ b/smo-install/oran_oom/informationservice/templates/ingress.yaml
@@ -16,13 +16,10 @@
################################################################################
*/}}
-{{- if .Values.informationservice.ingress.enabled -}}
+{{- if (include "common.ingressEnabled" .) -}}
apiVersion: networking.k8s.io/v1
kind: Ingress
-metadata:
- name: {{ include "common.name.informationservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
-
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
ingressClassName: {{ include "common.ingressClassName" . }}
rules:
@@ -31,15 +28,15 @@
- path: "/data-producer"
backend:
service:
- name: {{ include "common.name.informationservice" . }}
+ name: {{ include "common.name" . }}
port:
- number: {{ .Values.informationservice.service.internalPort1 }}
+ number: {{ (first .Values.service.ports).internalPort }}
pathType: Prefix
- path: "/data-consumer"
backend:
service:
- name: {{ include "common.name.informationservice" . }}
+ name: {{ include "common.name" . }}
port:
- number: {{ .Values.informationservice.service.internalPort1 }}
+ number: {{ (first .Values.service.ports).internalPort }}
pathType: Prefix
{{- end -}}
diff --git a/smo-install/oran_oom/informationservice/templates/service.yaml b/smo-install/oran_oom/informationservice/templates/service.yaml
index ba5783c..be38ac4 100644
--- a/smo-install/oran_oom/informationservice/templates/service.yaml
+++ b/smo-install/oran_oom/informationservice/templates/service.yaml
@@ -14,29 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.informationservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.informationservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- ports:
- {{if eq .Values.informationservice.service.allowHttp true -}}
- - name: {{ index .Values.informationservice.service.httpName }}
- port: {{ .Values.informationservice.service.internalPort1 }}
- targetPort: {{ .Values.informationservice.service.targetPort1 }}
- protocol: TCP
- {{- end }}
- - name: {{ index .Values.informationservice.service.httpsName }}
- port: {{ .Values.informationservice.service.internalPort2 }}
- targetPort: {{ .Values.informationservice.service.targetPort2 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.informationservice" . }}
- release: {{ .Release.Name }}
- type: ClusterIP
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/informationservice/templates/statefulset.yaml b/smo-install/oran_oom/informationservice/templates/statefulset.yaml
index a597324..f9d8348 100644
--- a/smo-install/oran_oom/informationservice/templates/statefulset.yaml
+++ b/smo-install/oran_oom/informationservice/templates/statefulset.yaml
@@ -16,67 +16,39 @@
kind: StatefulSet
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.informationservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.informationservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
- serviceName: {{ include "common.name.informationservice" . }}
+ serviceName: {{ include "common.name" . }}
replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.informationservice" . }}
- release: {{ .Release.Name }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.informationservice" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.informationservice" . }}
+ hostname: {{ include "common.name" . }}
+ initContainers:
+ - name: fix-permission
+ command:
+ - sh
+ - -c
+ - mkdir /var/information-coordinator-service/database;
+ chown -R 1000:1000 /var/information-coordinator-service;
+ image: busybox:1.28
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ volumeMounts:
+ - name: {{ include "common.vardataMountName" . }}
+ mountPath: /var/information-coordinator-service
containers:
- - name: {{ include "common.container.informationservice" . }}
- image: {{ .Values.informationservice.image.registry }}/{{ .Values.informationservice.image.name }}:{{ .Values.informationservice.image.tag }}
- imagePullPolicy: {{ .Values.informationservice.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.informationservice.service.targetPort1 }}
- protocol: TCP
- - containerPort: {{ .Values.informationservice.service.targetPort2 }}
- protocol: TCP
- readinessProbe:
- tcpSocket:
- port: {{ .Values.informationservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.informationservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.informationservice.liveness.periodSeconds }}
- livenessProbe:
- httpGet:
- path: /status
- port: {{ .Values.informationservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.informationservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.informationservice.liveness.periodSeconds }}
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 8 }}
+ {{- include "common.tcpsocketReadinessProbe" . | nindent 8 }}
+ {{- include "common.httpLiveProbe" . | nindent 8 }}
volumeMounts:
- - name: {{ include "common.name.informationservice" . }}-information-config
+ - name: {{ include "common.applicationConfigMountName" . }}
mountPath: /opt/app/information-coordinator-service/config
- - name: {{ include "common.name.informationservice" . }}-vardata
+ - name: {{ include "common.vardataMountName" . }}
mountPath: /var/information-coordinator-service
- volumes:
- - name: {{ include "common.name.informationservice" . }}-information-config
- configMap:
- name: {{ include "common.name.informationservice" . }}-configmap
+ volumes: {{- include "common.applicationConfigVolume" . | nindent 8 }}
- volumeClaimTemplates:
- - metadata:
- name: {{ include "common.name.informationservice" . }}-vardata
- spec:
- accessModes: [ ReadWriteOnce ]
- storageClassName: "{{ .Values.informationservice.persistence.storageClassName }}"
- resources:
- requests:
- storage: "{{ .Values.informationservice.persistence.size }}"
+ volumeClaimTemplates: {{- include "common.vardataVolumeClaimTemplate" . | nindent 4 }}
diff --git a/smo-install/oran_oom/informationservice/values.yaml b/smo-install/oran_oom/informationservice/values.yaml
index 7d7aadf..2df11d4 100644
--- a/smo-install/oran_oom/informationservice/values.yaml
+++ b/smo-install/oran_oom/informationservice/values.yaml
@@ -19,28 +19,72 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-informationservice:
- imagePullPolicy: IfNotPresent
- image:
- registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
- name: "nonrtric-plt-informationcoordinatorservice"
- tag: 1.6.0
- service:
- allowHttp: true
- httpName: http
- internalPort1: 9082
- targetPort1: 8083
- httpsName: https
- internalPort2: 9083
- targetPort2: 8434
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
- persistence:
- size: 2Gi
- storageClassName: standard
- ingress:
- enabled: false
+imagePullPolicy: IfNotPresent
+image:
+ registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
+ name: "nonrtric-plt-informationcoordinatorservice"
+ tag: 1.6.0
+service:
+ type: ClusterIP
+ ports:
+ - name: http
+ internalPort: "9082"
+ targetPort: "8083"
+ name_tls: https
+ internalPort_tls: "9083"
+ targetPort_tls: "8434"
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+persistence:
+ size: 2Gi
+ storageClassName: standard
+ingress:
+ enabled: false
+
+application:
+ spring:
+ profiles:
+ active: prod
+ main:
+ allow-bean-definition-overriding: true
+ aop:
+ auto: false
+ management:
+ endpoints:
+ web:
+ exposure:
+ include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
+
+ logging:
+ level:
+ ROOT: ERROR
+ org.springframework: ERROR
+ org.springframework.data: ERROR
+ org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
+ org.oransc.information: INFO
+ file:
+ name: /var/log/information-coordinator-service/application.log
+ server:
+ port : 8434
+ http-port: 8083
+ ssl:
+ key-store-type: JKS
+ key-store-password: policy_agent
+ key-store: /opt/app/information-coordinator-service/etc/cert/keystore.jks
+ key-password: policy_agent
+ key-alias: policy_agent
+ app:
+ filepath: /opt/app/information-coordinator-service/data/application_configuration.json
+ webclient:
+ trust-store-used: false
+ trust-store-password: policy_agent
+ trust-store: /opt/app/information-coordinator-service/etc/cert/truststore.jks
+ # Configuration of usage of HTTP Proxy for the southbound accesses.
+ # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s
+ http.proxy-host:
+ http.proxy-port: 0
+ vardata-directory: /var/information-coordinator-service
diff --git a/smo-install/oran_oom/nonrtric-common/Chart.yaml b/smo-install/oran_oom/nonrtric-common/Chart.yaml
index 3798faf..1f64891 100644
--- a/smo-install/oran_oom/nonrtric-common/Chart.yaml
+++ b/smo-install/oran_oom/nonrtric-common/Chart.yaml
@@ -17,4 +17,4 @@
apiVersion: v2
description: NONRTRIC Common templates for inclusion in other charts
name: nonrtric-common
-version: 2.0.0
\ No newline at end of file
+version: 2.0.0
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_a1controller.tpl b/smo-install/oran_oom/nonrtric-common/templates/_a1controller.tpl
deleted file mode 100644
index afb5097..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_a1controller.tpl
+++ /dev/null
@@ -1,24 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-{{- define "common.name.a1controller" -}}
- {{- printf "a1controller" -}}
-{{- end -}}
-
-{{- define "common.containername.a1controller" -}}
- {{- $name := ( include "common.name.a1controller" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
\ No newline at end of file
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_a1simulator.tpl b/smo-install/oran_oom/nonrtric-common/templates/_a1simulator.tpl
deleted file mode 100644
index d15ee93..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_a1simulator.tpl
+++ /dev/null
@@ -1,30 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-{{- define "common.name.a1simulator" -}}
- {{- printf "a1simulator" -}}
-{{- end -}}
-
-{{- define "common.fullname.a1simulator" -}}
- {{- $name := ( include "common.name.a1simulator" . ) -}}
- {{- $namespace := ( include "common.namespace.nonrtric" . ) -}}
- {{- printf "%s-%s" $namespace $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{- define "common.containername.a1simulator" -}}
- {{- $name := ( include "common.fullname.a1simulator" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_common.tpl b/smo-install/oran_oom/nonrtric-common/templates/_configmap.tpl
similarity index 72%
rename from smo-install/oran_oom/nonrtric-common/templates/_common.tpl
rename to smo-install/oran_oom/nonrtric-common/templates/_configmap.tpl
index af3226f..3eb2495 100644
--- a/smo-install/oran_oom/nonrtric-common/templates/_common.tpl
+++ b/smo-install/oran_oom/nonrtric-common/templates/_configmap.tpl
@@ -1,5 +1,6 @@
+{{/*
################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
+# Copyright (c) 2024 NYCU WINLab. #
# #
# Licensed under the Apache License, Version 2.0 (the "License"); #
# you may not use this file except in compliance with the License. #
@@ -13,7 +14,17 @@
# See the License for the specific language governing permissions and #
# limitations under the License. #
################################################################################
+*/}}
-{{- define "common.namespace.nonrtric" -}}
- {{- default .Release.Namespace .Values.nsPrefix -}}
-{{- end -}}
+{{- define "common.applicationConfigmap" -}}
+{{- $dot := default . .dot -}}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "common.name" $dot }}-application-configmap
+ namespace: {{ include "common.namespace" . }}
+ labels: {{- include "common.labels" . | nindent 4 }}
+data:
+ application.yml: |
+ {{- toYaml .Values.application | nindent 4 }}
+{{ end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_controlpanel.tpl b/smo-install/oran_oom/nonrtric-common/templates/_controlpanel.tpl
deleted file mode 100644
index 1f1430e..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_controlpanel.tpl
+++ /dev/null
@@ -1,24 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-{{- define "common.name.controlpanel" -}}
- {{- printf "controlpanel" -}}
-{{- end -}}
-
-{{- define "common.containername.controlpanel" -}}
- {{- $name := ( include "common.name.controlpanel" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
\ No newline at end of file
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_dmaapadapterservice.tpl b/smo-install/oran_oom/nonrtric-common/templates/_dmaapadapterservice.tpl
deleted file mode 100644
index 0d73046..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_dmaapadapterservice.tpl
+++ /dev/null
@@ -1,24 +0,0 @@
-################################################################################
-# Copyright (c) 2021 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-{{- define "common.name.dmaapadapterservice" -}}
- {{- printf "dmaapadapterservice" -}}
-{{- end -}}
-
-{{- define "common.container.dmaapadapterservice" -}}
- {{- $name := ( include "common.name.dmaapadapterservice" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_dmaapmediatorservice.tpl b/smo-install/oran_oom/nonrtric-common/templates/_dmaapmediatorservice.tpl
deleted file mode 100644
index d31d0c8..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_dmaapmediatorservice.tpl
+++ /dev/null
@@ -1,23 +0,0 @@
-################################################################################
-# Copyright (c) 2021 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-{{- define "common.name.dmaapmediatorservice" -}}
- {{- printf "dmaapmediatorservice" -}}
-{{- end -}}
-{{- define "common.container.dmaapmediatorservice" -}}
- {{- $name := ( include "common.name.dmaapmediatorservice" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_informationservice.tpl b/smo-install/oran_oom/nonrtric-common/templates/_informationservice.tpl
deleted file mode 100644
index bb686b2..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_informationservice.tpl
+++ /dev/null
@@ -1,22 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-{{- define "common.name.informationservice" -}}
- {{- printf "informationservice" -}}
-{{- end -}}
-{{- define "common.container.informationservice" -}}
- {{- $name := ( include "common.name.informationservice" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_nonrtricgateway.tpl b/smo-install/oran_oom/nonrtric-common/templates/_ingress.tpl
similarity index 67%
rename from smo-install/oran_oom/nonrtric-common/templates/_nonrtricgateway.tpl
rename to smo-install/oran_oom/nonrtric-common/templates/_ingress.tpl
index d14e540..c5cf507 100644
--- a/smo-install/oran_oom/nonrtric-common/templates/_nonrtricgateway.tpl
+++ b/smo-install/oran_oom/nonrtric-common/templates/_ingress.tpl
@@ -1,5 +1,6 @@
+{{/*
################################################################################
-# Copyright (c) 2021 Nordix Foundation. #
+# Copyright (c) 2024 NYCU WINLab. #
# #
# Licensed under the Apache License, Version 2.0 (the "License"); #
# you may not use this file except in compliance with the License. #
@@ -13,16 +14,23 @@
# See the License for the specific language governing permissions and #
# limitations under the License. #
################################################################################
-
-{{- define "common.name.nonrtricgateway" -}}
- {{- printf "nonrtricgateway" -}}
-{{- end -}}
-
-{{- define "common.container.nonrtricgateway" -}}
- {{- $name := ( include "common.name.nonrtricgateway" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
+*/}}
{{- define "common.ingressClassName" -}}
- {{- printf "kong" -}}
+ {{- if and .Values.global .Values.global.ingress -}}
+ {{- default "kong" .Values.global.ingress.ingressClass -}}
+ {{- else -}}
+ {{- print "kong" -}}
+ {{- end -}}
+{{- end -}}
+
+{{- define "common.ingressEnabled" -}}
+ {{- if and .Values.global .Values.global.ingress -}}
+ {{- if .Values.global.ingress.enabled -}}
+ {{- if or .Values.global.ingress.enabled_all .Values.ingress.enabled -}}
+ true
+ {{- end -}}
+ {{- end -}}
+ {{- else -}}
+ {{- .Values.ingress.enabled -}}
+ {{- end -}}
{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_labels.tpl b/smo-install/oran_oom/nonrtric-common/templates/_labels.tpl
new file mode 100644
index 0000000..1f97eff
--- /dev/null
+++ b/smo-install/oran_oom/nonrtric-common/templates/_labels.tpl
@@ -0,0 +1,105 @@
+{{/*
+# Copyright © 2019 Orange
+# Modifications Copyright (C) 2022 Bell Canada
+# Modifications Copyright (c) 2024 NYCU WINLab
+#
+# 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.
+*/}}
+
+{{/*
+Common labels
+The function takes several arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .labels : labels to add (dict)
+*/}}
+{{- define "common.labels" -}}
+{{- $dot := default . .dot -}}
+app.kubernetes.io/name: {{ include "common.name" $dot }}
+app.kubernetes.io/version: "{{ (default $dot.Chart.Version $dot.Chart.AppVersion) | replace "+" "_" }}"
+{{- if not .ignoreHelmChart }}
+helm.sh/chart: {{ $dot.Chart.Name }}-{{ $dot.Chart.Version | replace "+" "_" }}
+{{- end }}
+app.kubernetes.io/instance: {{ $dot.Release.Name }}
+app.kubernetes.io/managed-by: {{ $dot.Release.Service }}
+{{- if .labels }}
+{{ include "common.tplValue" (dict "value" .labels "context" $dot) }}
+{{- end }}
+{{- end -}}
+
+{{/*
+Labels to use on deploy.spec.selector.matchLabels and svc.spec.selector
+The function takes several arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .matchLabels: selectors/matchlLabels to add (dict)
+*/}}
+{{- define "common.matchLabels" -}}
+{{- $dot := default . .dot -}}
+{{- $matchLabels := default (dict) .matchLabels -}}
+{{- if not $matchLabels.nameNoMatch -}}
+app.kubernetes.io/name: {{ include "common.name" $dot }}
+{{- end }}
+app.kubernetes.io/instance: {{ include "common.release" $dot }}
+{{- if $matchLabels }}
+{{$_ := unset $matchLabels "nameNoMatch"}}
+{{- include "common.tplValue" (dict "value" $matchLabels "context" $dot) }}
+{{- end }}
+{{- end -}}
+
+{{/*
+ Generate "top" metadata for Deployment / StatefulSet / ...
+ The function takes several arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .labels: labels to add (dict)
+ - .suffix: suffix to name
+
+*/}}
+{{- define "common.resourceMetadata" -}}
+{{- $dot := default . .dot -}}
+{{- $suffix := default "" .suffix -}}
+{{- $labels := default (dict) .labels -}}
+{{- $annotations := default (dict) .annotations -}}
+name: {{ include "common.name" (dict "suffix" $suffix "dot" $dot )}}
+namespace: {{ include "common.namespace" $dot }}
+labels: {{- include "common.labels" (dict "labels" $labels "ignoreHelmChart" .ignoreHelmChart "dot" $dot ) | nindent 2 }}
+{{- if $annotations }}
+annotations: {{- include "common.tplValue" (dict "value" $annotations "context" $dot) | nindent 2}}
+{{- end }}
+{{- end -}}
+
+{{/*
+ Generate selectors for Deployment / StatefulSet / ...
+ The function takes several arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .matchLabels: labels to add (dict)
+*/}}
+{{- define "common.selectors" -}}
+{{- $dot := default . .dot -}}
+{{- $matchLabels := default (dict) .matchLabels -}}
+matchLabels: {{- include "common.matchLabels" (dict "matchLabels" $matchLabels "dot" $dot) | nindent 2 }}
+{{- end -}}
+
+{{/*
+ Generate "template" metadata for Deployment / StatefulSet / ...
+ The function takes several arguments (inside a dictionary)
+ - .dot : environment (.)
+ - .labels: labels to add (dict)
+*/}}
+{{- define "common.templateMetadata" -}}
+{{- $dot := default . .dot -}}
+{{- $labels := default (dict) .labels -}}
+{{- if $dot.Values.podAnnotations -}}
+annotations: {{- include "common.tplValue" (dict "value" $dot.Values.podAnnotations "context" $dot) | nindent 2 }}
+{{ end -}}
+labels: {{- include "common.labels" (dict "labels" $labels "ignoreHelmChart" .ignoreHelmChart "dot" $dot) | nindent 2 }}
+name: {{ include "common.name" $dot }}
+{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_name.tpl b/smo-install/oran_oom/nonrtric-common/templates/_name.tpl
new file mode 100644
index 0000000..d0072c2
--- /dev/null
+++ b/smo-install/oran_oom/nonrtric-common/templates/_name.tpl
@@ -0,0 +1,37 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright (c) 2024 NYCU WINLab.
+#
+# 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.
+*/}}
+
+{{/*
+ Expand the name of a chart.
+ The function takes from one to two arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .suffix : add a suffix to the name
+*/}}
+{{- define "common.name" -}}
+ {{- $dot := default . .dot -}}
+ {{- $suffix := .suffix -}}
+ {{- default (default $dot.Chart.Name $dot.Values.nameOverride) .nameOverride | trunc 63 | trimSuffix "-" -}}{{ if $suffix }}{{ print "-" $suffix }}{{ end }}
+{{- end -}}
+
+{{- define "common.containername" -}}
+ {{- $name := ( include "common.name" . ) -}}
+ {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{- define "common.release" -}}
+{{ .Release.Name }}
+{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_namespace.tpl b/smo-install/oran_oom/nonrtric-common/templates/_namespace.tpl
new file mode 100644
index 0000000..94c9ee7
--- /dev/null
+++ b/smo-install/oran_oom/nonrtric-common/templates/_namespace.tpl
@@ -0,0 +1,26 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+#
+# 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.
+*/}}
+
+{{/*
+ Resolve the namespace to apply to a chart. The default namespace suffix
+ is the name of the chart. This can be overridden if necessary (eg. for subcharts)
+ using the following value:
+
+ - .Values.nsPrefix : override namespace prefix
+*/}}
+{{- define "common.namespace" -}}
+ {{- default .Release.Namespace .Values.nsPrefix -}}
+{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_pods.tpl b/smo-install/oran_oom/nonrtric-common/templates/_pods.tpl
new file mode 100644
index 0000000..e81bc38
--- /dev/null
+++ b/smo-install/oran_oom/nonrtric-common/templates/_pods.tpl
@@ -0,0 +1,92 @@
+{{/*
+################################################################################
+# Copyright (c) 2024 NYCU WINLab. #
+# #
+# 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. #
+################################################################################
+*/}}
+
+{{- define "common.containerPorts" -}}
+{{- $ports := default (list) .Values.service.ports }}
+{{- range $index, $port := $ports }}
+{{- if $port.targetPort -}}
+- containerPort: {{ $port.targetPort }}
+ name: {{ $port.name }}
+{{- if $port.l4_protocol }}
+ protocol: {{ $port.l4_protocol }}
+{{- else }}
+ protocol: TCP
+{{- end }}
+{{- end }}
+{{- if $port.targetPort_tls }}
+- containerPort: {{ $port.targetPort_tls }}
+ name: {{ $port.name_tls }}
+{{- if $port.l4_protocol }}
+ protocol: {{ $port.l4_protocol }}
+{{- else }}
+ protocol: TCP
+{{- end }}
+{{- end }}
+{{- end }}
+{{- end -}}
+
+{{- define "common.probePort" -}}
+{{ default (first .Values.service.ports).targetPort .Values.service.probePort }}
+{{- end -}}
+
+{{- define "common.tcpsocketReadinessProbe" -}}
+{{- $dot := default . .dot -}}
+{{- $port := default (include "common.probePort" $dot) .port -}}
+readinessProbe:
+ tcpSocket:
+ port: {{ $port }}
+ initialDelaySeconds: {{ $dot.Values.readiness.initialDelaySeconds }}
+ periodSeconds: {{ $dot.Values.readiness.periodSeconds }}
+{{- end -}}
+
+{{- define "common.tcpsocketLivenessProbe" -}}
+{{- $dot := default . .dot -}}
+{{- $port := default (include "common.probePort" $dot) .port -}}
+livenessProbe:
+ tcpSocket:
+ port: {{ $port }}
+ initialDelaySeconds: {{ $dot.Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ $dot.Values.liveness.periodSeconds }}
+{{- end -}}
+
+{{- define "common.tcpsocketProbes" -}}
+{{- include "common.tcpsocketReadinessProbe" . }}
+{{ include "common.tcpsocketLivenessProbe" . }}
+{{- end -}}
+
+{{- define "common.httpLiveProbe" -}}
+{{- $dot := default . .dot }}
+{{- $path := default "/status" .path -}}
+livenessProbe:
+ httpGet:
+ path: {{ $path }}
+ port: {{ include "common.probePort" . }}
+ initialDelaySeconds: {{ $dot.Values.liveness.initialDelaySeconds }}
+ periodSeconds: {{ $dot.Values.liveness.periodSeconds }}
+{{- end -}}
+
+{{- define "common.applicationConfigMountName" -}}
+{{ include "common.name" . }}-application-config
+{{- end -}}
+
+{{- define "common.applicationConfigVolume" -}}
+- name: {{ include "common.name" . }}-application-config
+ configMap:
+ name: {{ include "common.name" . }}-application-configmap
+{{- end -}}
+
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_policymanagementservice.tpl b/smo-install/oran_oom/nonrtric-common/templates/_policymanagementservice.tpl
deleted file mode 100644
index b265ec3..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_policymanagementservice.tpl
+++ /dev/null
@@ -1,24 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-{{- define "common.name.policymanagementservice" -}}
- {{- printf "policymanagementservice" -}}
-{{- end -}}
-
-{{- define "common.container.policymanagementservice" -}}
- {{- $name := ( include "common.name.policymanagementservice" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_rappcatalogueservice.tpl b/smo-install/oran_oom/nonrtric-common/templates/_rappcatalogueservice.tpl
deleted file mode 100644
index 230c807..0000000
--- a/smo-install/oran_oom/nonrtric-common/templates/_rappcatalogueservice.tpl
+++ /dev/null
@@ -1,24 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-{{- define "common.name.rappcatalogueservice" -}}
- {{- printf "rappcatalogueservice" -}}
-{{- end -}}
-
-{{- define "common.container.rappcatalogueservice" -}}
- {{- $name := ( include "common.name.rappcatalogueservice" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_service.tpl b/smo-install/oran_oom/nonrtric-common/templates/_service.tpl
new file mode 100644
index 0000000..5b81c1d
--- /dev/null
+++ b/smo-install/oran_oom/nonrtric-common/templates/_service.tpl
@@ -0,0 +1,137 @@
+{{/*
+# Copyright © 2017 Amdocs, Bell Canada
+# Modifications Copyright (c) 2024 NYCU WINLab.
+#
+# 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.
+*/}}
+{{/*
+ Resolve the name of a chart's service.
+
+ The default will be the chart name (or .Values.nameOverride if set).
+ And the use of .Values.service.name overrides all.
+
+ - .Values.service.name: override default service (ie. chart) name
+*/}}
+{{/*
+ Expand the service name for a chart.
+*/}}
+{{- define "common.servicename" -}}
+ {{- $name := default .Chart.Name .Values.nameOverride -}}
+ {{- default $name .Values.service.name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{/* Define the metadata of Service
+ The function takes from one to four arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .suffix : a string which will be added at the end of the name (with a '-').
+ - .annotations: the annotations to add
+ - .labels : labels to add
+ Usage example:
+ {{ include "common.serviceMetadata" ( dict "suffix" "myService" "dot" .) }}
+ {{ include "common.serviceMetadata" ( dict "annotations" .Values.service.annotation "dot" .) }}
+*/}}
+
+{{- define "common.serviceMetadata" -}}
+ {{- $dot := default . .dot -}}
+ {{- $suffix := default "" .suffix -}}
+ {{- $annotations := default "" .annotations -}}
+ {{- $labels := default (dict) .labels -}}
+{{- if $annotations -}}
+annotations:
+{{ include "common.tplValue" (dict "value" $annotations "context" $dot) | indent 2 }}
+{{- end -}}
+name: {{ include "common.servicename" $dot }}{{ if $suffix }}{{ print "-" $suffix }}{{ end }}
+namespace: {{ include "common.namespace" $dot }}
+labels: {{- include "common.labels" (dict "labels" $labels "dot" $dot) | nindent 2 -}}
+{{- end -}}
+
+{{/* Define the ports of Service
+ The function takes three arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .ports : an array of ports
+ - .serviceType: the type of the service
+*/}}
+{{- define "common.servicePorts" -}}
+{{- $serviceType := .serviceType -}}
+{{- $dot := .dot -}}
+{{- range $index, $port := .ports -}}
+{{- if $port.targetPort -}}
+- name: {{ $port.name }}
+ port: {{ default $port.targetPort $port.internalPort }}
+ targetPort: {{ $port.targetPort }}
+{{- if (and (eq $serviceType "NodePort") $port.nodePort) }}
+ nodePort: {{ $port.nodePort }}
+{{- end }}
+{{- if $port.l4_protocol }}
+ protocol: {{ $port.l4_protocol }}
+{{- else }}
+ protocol: TCP
+{{- end }}
+{{- if $port.app_protocol }}
+ appProtocol: {{ $port.app_protocol }}
+{{- end }}
+{{- end }}
+{{- if $port.internalPort_tls }}
+- name: {{ $port.name_tls }}
+ port: {{ default $port.targetPort_tls $port.internalPort_tls }}
+ targetPort: {{ $port.targetPort_tls }}
+{{- if (and (eq $serviceType "NodePort") $port.nodePort_tls) }}
+ nodePort: {{ $port.nodePort_tls }}
+{{- end }}
+{{- if $port.l4_protocol }}
+ protocol: {{ $port.l4_protocol }}
+{{- else }}
+ protocol: TCP
+{{- end }}
+{{- if $port.app_protocol }}
+ appProtocol: {{ $port.app_protocol }}
+{{- end }}
+{{- end }}
+{{ end }}
+{{- end -}}
+
+{{/* Create generic service template
+ The function takes several arguments (inside a dictionary):
+ - .dot : environment (.)
+ - .ports : an array of ports
+ - .serviceType: the type of the service
+ - .suffix : a string which will be added at the end of the name (with a '-')
+ - .annotations: the annotations to add
+ - .publishNotReadyAddresses: if we publish not ready address
+ - .headless: if the service is headless
+ - .add_plain_port: add tls port AND plain port
+ - .labels : labels to add (dict)
+ - .matchLabels: selectors/machLabels to add (dict)
+*/}}
+{{- define "common.service" -}}
+{{- $dot := default . .dot -}}
+{{- $suffix := default "" $dot.Values.service.suffix -}}
+{{- $annotations := default "" $dot.Values.service.annotations -}}
+{{- $publishNotReadyAddresses := default false $dot.Values.service.publishNotReadyAddresses -}}
+{{- $serviceType := $dot.Values.service.type -}}
+{{- $ports := $dot.Values.service.ports -}}
+{{- $labels := default (dict) .labels -}}
+{{- $matchLabels := default (dict) .matchLabels -}}
+{{- $ipFamilyPolicy := default "PreferDualStack" $dot.Values.service.ipFamilyPolicy -}}
+apiVersion: v1
+kind: Service
+metadata: {{- include "common.serviceMetadata" (dict "suffix" $suffix "annotations" $annotations "labels" $labels "dot" $dot) | nindent 2 }}
+spec:
+ ports: {{- include "common.servicePorts" (dict "serviceType" $serviceType "ports" $ports "dot" $dot) | nindent 4 }}
+ ipFamilyPolicy: {{ $ipFamilyPolicy }}
+ {{- if $publishNotReadyAddresses }}
+ publishNotReadyAddresses: true
+ {{- end }}
+ type: {{ $serviceType }}
+ selector: {{- include "common.matchLabels" (dict "matchLabels" $matchLabels "dot" $dot) | nindent 4 }}
+{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_helmmanager.tpl b/smo-install/oran_oom/nonrtric-common/templates/_statefulset.tpl
similarity index 72%
rename from smo-install/oran_oom/nonrtric-common/templates/_helmmanager.tpl
rename to smo-install/oran_oom/nonrtric-common/templates/_statefulset.tpl
index 736bff3..b0753ab 100644
--- a/smo-install/oran_oom/nonrtric-common/templates/_helmmanager.tpl
+++ b/smo-install/oran_oom/nonrtric-common/templates/_statefulset.tpl
@@ -1,5 +1,6 @@
+{{/*
################################################################################
-# Copyright (c) 2021 Nordix Foundation. #
+# Copyright (c) 2024 NYCU WINLab. #
# #
# Licensed under the Apache License, Version 2.0 (the "License"); #
# you may not use this file except in compliance with the License. #
@@ -13,12 +14,19 @@
# See the License for the specific language governing permissions and #
# limitations under the License. #
################################################################################
+*/}}
-{{- define "common.name.helmmanager" -}}
- {{- printf "helmmanager" -}}
+{{- define "common.vardataVolumeClaimTemplate" -}}
+- metadata:
+ name: {{ include "common.name" . }}-vardata
+ spec:
+ accessModes: [ ReadWriteOnce ]
+ storageClassName: "{{ .Values.persistence.storageClassName }}"
+ resources:
+ requests:
+ storage: "{{ .Values.persistence.size }}"
{{- end -}}
-{{- define "common.container.helmmanager" -}}
- {{- $name := ( include "common.name.helmmanager" . ) -}}
- {{- printf "container-%s" $name | trunc 63 | trimSuffix "-" -}}
+{{- define "common.vardataMountName" -}}
+{{ include "common.name" . }}-vardata
{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_utils.tpl b/smo-install/oran_oom/nonrtric-common/templates/_utils.tpl
new file mode 100644
index 0000000..b74ecbd
--- /dev/null
+++ b/smo-install/oran_oom/nonrtric-common/templates/_utils.tpl
@@ -0,0 +1,28 @@
+{{/*
+# Copyright © 2019 Orange
+#
+# 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.
+*/}}
+
+{{/*
+Renders a value that contains template.
+Usage:
+{{ include "common.tplValue" ( dict "value" .Values.path.to.the.Value "context" $) }}
+*/}}
+{{- define "common.tplValue" -}}
+ {{- if typeIs "string" .value }}
+ {{- tpl .value .context }}
+ {{- else }}
+ {{- tpl (.value | toYaml) .context }}
+ {{- end }}
+{{- end -}}
diff --git a/smo-install/oran_oom/nonrtric-common/values.yaml b/smo-install/oran_oom/nonrtric-common/values.yaml
index 10520ad..993d88d 100644
--- a/smo-install/oran_oom/nonrtric-common/values.yaml
+++ b/smo-install/oran_oom/nonrtric-common/values.yaml
@@ -12,4 +12,4 @@
# 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. #
-################################################################################
\ No newline at end of file
+################################################################################
diff --git a/smo-install/oran_oom/nonrtric/templates/pv1.yaml b/smo-install/oran_oom/nonrtric/templates/pv1.yaml
index b600c99..2544072 100644
--- a/smo-install/oran_oom/nonrtric/templates/pv1.yaml
+++ b/smo-install/oran_oom/nonrtric/templates/pv1.yaml
@@ -20,7 +20,7 @@
apiVersion: v1
metadata:
name: nonrtric-pv1
- namespace: {{ include "common.namespace.nonrtric" . }}
+ namespace: {{ include "common.namespace" . }}
spec:
capacity:
storage: {{ .Values.nonrtric.volume1.size}}
diff --git a/smo-install/oran_oom/nonrtric/templates/pv2.yaml b/smo-install/oran_oom/nonrtric/templates/pv2.yaml
index cdf5eaf..50ff421 100644
--- a/smo-install/oran_oom/nonrtric/templates/pv2.yaml
+++ b/smo-install/oran_oom/nonrtric/templates/pv2.yaml
@@ -20,7 +20,7 @@
apiVersion: v1
metadata:
name: nonrtric-pv2
- namespace: {{ include "common.namespace.nonrtric" . }}
+ namespace: {{ include "common.namespace" . }}
spec:
capacity:
storage: {{ .Values.nonrtric.volume2.size }}
diff --git a/smo-install/oran_oom/nonrtric/templates/pv3.yaml b/smo-install/oran_oom/nonrtric/templates/pv3.yaml
index 90ed1aa..c29edd3 100644
--- a/smo-install/oran_oom/nonrtric/templates/pv3.yaml
+++ b/smo-install/oran_oom/nonrtric/templates/pv3.yaml
@@ -20,7 +20,7 @@
apiVersion: v1
metadata:
name: nonrtric-pv3
- namespace: {{ include "common.namespace.nonrtric" . }}
+ namespace: {{ include "common.namespace" . }}
spec:
capacity:
storage: {{ .Values.nonrtric.volume3.size }}
diff --git a/smo-install/oran_oom/nonrtric/values.yaml b/smo-install/oran_oom/nonrtric/values.yaml
index 8fdcebb..441ef31 100644
--- a/smo-install/oran_oom/nonrtric/values.yaml
+++ b/smo-install/oran_oom/nonrtric/values.yaml
@@ -15,6 +15,15 @@
# limitations under the License.
# ============LICENSE_END=================================================
+global:
+ ingress:
+ # generally enable ingress for components
+ enabled: true
+ # enable all component's Ingress interfaces
+ enable_all: false
+ # Ingress class (only for provider "ingress"): e.g. kong, nginx, traefik
+ ingressClass:
+
nonrtric:
persistence:
mountPath: /dockerdata-nfs
@@ -51,5 +60,3 @@
installCRDs: false
admin:
enabled: true
-cert-wrapper:
- enabled: true
diff --git a/smo-install/oran_oom/nonrtricgateway/Chart.yaml b/smo-install/oran_oom/nonrtricgateway/Chart.yaml
index 9ca9e2d..93f4c81 100644
--- a/smo-install/oran_oom/nonrtricgateway/Chart.yaml
+++ b/smo-install/oran_oom/nonrtricgateway/Chart.yaml
@@ -23,4 +23,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/nonrtricgateway/resources/config/application.yaml b/smo-install/oran_oom/nonrtricgateway/resources/config/application.yaml
deleted file mode 100644
index e70ae12..0000000
--- a/smo-install/oran_oom/nonrtricgateway/resources/config/application.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
-################################################################################
-# Copyright (c) 2021 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-server:
- port: 9090
-spring:
- cloud:
- gateway:
- httpclient:
- ssl:
- useInsecureTrustManager: true
- wiretap: true
- httpserver:
- wiretap: true
- routes:
- - id: A1-Policy
- uri: {{ .Values.a1PolicyLink }}
- predicates:
- - Path=/a1-policy/**
- - id: A1-EI
- uri: https://informationservice:9083
- predicates:
- - Path=/data-producer/**,/data-consumer/**
-management:
- endpoint:
- gateway:
- enabled: true
- endpoints:
- web:
- exposure:
- include: "gateway,loggers,logfile,health,info,metrics,threaddump,heapdump"
-logging:
- level:
- ROOT: ERROR
- org.springframework: ERROR
- org.springframework.cloud.gateway: INFO
- reactor.netty: INFO
- file:
- name: /var/log/nonrtric-gateway/application.log
diff --git a/smo-install/oran_oom/nonrtricgateway/templates/configmap.yaml b/smo-install/oran_oom/nonrtricgateway/templates/configmap.yaml
index d391d1e..12850df 100644
--- a/smo-install/oran_oom/nonrtricgateway/templates/configmap.yaml
+++ b/smo-install/oran_oom/nonrtricgateway/templates/configmap.yaml
@@ -14,16 +14,4 @@
# limitations under the License. #
################################################################################
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.name.nonrtricgateway" . }}-configmap
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.nonrtricgateway" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
\ No newline at end of file
+{{ include "common.applicationConfigmap" . }}
diff --git a/smo-install/oran_oom/nonrtricgateway/templates/deployment.yaml b/smo-install/oran_oom/nonrtricgateway/templates/deployment.yaml
index bd742a9..02789f1 100644
--- a/smo-install/oran_oom/nonrtricgateway/templates/deployment.yaml
+++ b/smo-install/oran_oom/nonrtricgateway/templates/deployment.yaml
@@ -16,51 +16,21 @@
kind: Deployment
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.nonrtricgateway" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.nonrtricgateway" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.nonrtricgateway" . }}
- release: {{ .Release.Name }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.nonrtricgateway" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.nonrtricgateway" . }}
+ hostname: {{ include "common.name" . }}
containers:
- - name: {{ include "common.container.nonrtricgateway" . }}
- image: {{ .Values.nonrtricgateway.image.registry }}/{{ .Values.nonrtricgateway.image.name }}:{{ .Values.nonrtricgateway.image.tag }}
- imagePullPolicy: {{ .Values.nonrtricgateway.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.nonrtricgateway.service.targetPort1 }}
- protocol: TCP
- readinessProbe:
- tcpSocket:
- port: {{ .Values.nonrtricgateway.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.nonrtricgateway.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.nonrtricgateway.liveness.periodSeconds }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.nonrtricgateway.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.nonrtricgateway.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.nonrtricgateway.liveness.periodSeconds }}
- volumeMounts:
- - name: {{ include "common.name.nonrtricgateway" . }}-config
- mountPath: /opt/app/nonrtric-gateway/config
- volumes:
- - name: {{ include "common.name.nonrtricgateway" . }}-config
- configMap:
- name: {{ include "common.name.nonrtricgateway" . }}-configmap
\ No newline at end of file
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 10 }}
+ {{- include "common.tcpsocketProbes" . | nindent 10 }}
+ volumeMounts:
+ - name: {{ include "common.applicationConfigMountName" . }}
+ mountPath: /opt/app/nonrtric-gateway/config
+ volumes: {{- include "common.applicationConfigVolume" . | nindent 8 }}
diff --git a/smo-install/oran_oom/nonrtricgateway/templates/service.yaml b/smo-install/oran_oom/nonrtricgateway/templates/service.yaml
index 085c0e6..48461eb 100644
--- a/smo-install/oran_oom/nonrtricgateway/templates/service.yaml
+++ b/smo-install/oran_oom/nonrtricgateway/templates/service.yaml
@@ -14,24 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.nonrtricgateway" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.nonrtricgateway" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- ports:
- - name: {{ index .Values.nonrtricgateway.service.httpName }}
- port: {{ .Values.nonrtricgateway.service.internalPort1 }}
- targetPort: {{ .Values.nonrtricgateway.service.targetPort1 }}
- nodePort: {{ .Values.nonrtricgateway.service.externalPort1 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.nonrtricgateway" . }}
- release: {{ .Release.Name }}
- type: NodePort
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/nonrtricgateway/values.yaml b/smo-install/oran_oom/nonrtricgateway/values.yaml
index 8625a85..c37308e 100644
--- a/smo-install/oran_oom/nonrtricgateway/values.yaml
+++ b/smo-install/oran_oom/nonrtricgateway/values.yaml
@@ -18,21 +18,62 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-nonrtricgateway:
- imagePullPolicy: IfNotPresent
- image:
- registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
- name: nonrtric-gateway
- tag: 1.2.0
- service:
- httpName: http
- internalPort1: 9090
- targetPort1: 9090
- externalPort1: 30093
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
-a1PolicyLink: http://a1policymanagement.onap:8081
+imagePullPolicy: IfNotPresent
+image:
+ registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
+ name: nonrtric-gateway
+ tag: 1.2.0
+service:
+ type: NodePort
+ ports:
+ - name: http
+ internalPort: "9090"
+ targetPort: "9090"
+ nodePort: "30093"
+
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+
+a1PolicyLink: &a1PolicyLink http://a1policymanagement.onap:8081
+
+application:
+ server:
+ port: 9090
+ spring:
+ cloud:
+ gateway:
+ httpclient:
+ ssl:
+ useInsecureTrustManager: true
+ wiretap: true
+ httpserver:
+ wiretap: true
+ routes:
+ - id: A1-Policy
+ uri: *a1PolicyLink
+ predicates:
+ - Path=/a1-policy/**
+ - id: A1-EI
+ uri: https://informationservice:9083
+ predicates:
+ - Path=/data-producer/**,/data-consumer/**
+ management:
+ endpoint:
+ gateway:
+ enabled: true
+ endpoints:
+ web:
+ exposure:
+ include: "gateway,loggers,logfile,health,info,metrics,threaddump,heapdump"
+ logging:
+ level:
+ ROOT: ERROR
+ org.springframework: ERROR
+ org.springframework.cloud.gateway: INFO
+ reactor.netty: INFO
+ file:
+ name: /var/log/nonrtric-gateway/application.log
diff --git a/smo-install/oran_oom/odu-app-ics-version/Chart.yaml b/smo-install/oran_oom/odu-app-ics-version/Chart.yaml
index 830e4b4..24949ac 100755
--- a/smo-install/oran_oom/odu-app-ics-version/Chart.yaml
+++ b/smo-install/oran_oom/odu-app-ics-version/Chart.yaml
@@ -3,3 +3,8 @@
description: A Helm chart to deploy odu-app-ics-version version
name: odu-app-ics-version
version: 1.0.0
+
+dependencies:
+ - name: nonrtric-common
+ version: ^2.0.0
+ repository: "@local"
diff --git a/smo-install/oran_oom/odu-app-ics-version/templates/_helpers.tpl b/smo-install/oran_oom/odu-app-ics-version/templates/_helpers.tpl
deleted file mode 100755
index 8f0fc56..0000000
--- a/smo-install/oran_oom/odu-app-ics-version/templates/_helpers.tpl
+++ /dev/null
@@ -1,79 +0,0 @@
-{{/*
-# Copyright (C) 2021 Nordix Foundation. All rights reserved.
-# ========================================================================
-# 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.
-# ============LICENSE_END=================================================
-*/}}
-
-{{/*
-Expand the name of the chart.
-*/}}
-{{- define "odu-app-ics-version.name" -}}
-{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
-{{- end }}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-If release name contains chart name it will be used as a full name.
-*/}}
-{{- define "odu-app-ics-version.fullname" -}}
-{{- if .Values.fullnameOverride }}
-{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
-{{- else }}
-{{- $name := default .Chart.Name .Values.nameOverride }}
-{{- if contains $name .Release.Name }}
-{{- .Release.Name | trunc 63 | trimSuffix "-" }}
-{{- else }}
-{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
-{{- end }}
-{{- end }}
-{{- end }}
-
-{{/*
-Create chart name and version as used by the chart label.
-*/}}
-{{- define "odu-app-ics-version.chart" -}}
-{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
-{{- end }}
-
-{{/*
-Common labels
-*/}}
-{{- define "odu-app-ics-version.labels" -}}
-helm.sh/chart: {{ include "odu-app-ics-version.chart" . }}
-{{ include "odu-app-ics-version.selectorLabels" . }}
-{{- if .Chart.AppVersion }}
-app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
-{{- end }}
-app.kubernetes.io/managed-by: {{ .Release.Service }}
-{{- end }}
-
-{{/*
-Selector labels
-*/}}
-{{- define "odu-app-ics-version.selectorLabels" -}}
-app.kubernetes.io/name: {{ include "odu-app-ics-version.name" . }}
-app.kubernetes.io/instance: {{ .Release.Name }}
-{{- end }}
-
-{{/*
-Create the name of the service account to use
-*/}}
-{{- define "odu-app-ics-version.serviceAccountName" -}}
-{{- if .Values.serviceAccount.create }}
-{{- default (include "odu-app-ics-version.fullname" .) .Values.serviceAccount.name }}
-{{- else }}
-{{- default "default" .Values.serviceAccount.name }}
-{{- end }}
-{{- end }}
diff --git a/smo-install/oran_oom/odu-app-ics-version/templates/deployment.yaml b/smo-install/oran_oom/odu-app-ics-version/templates/deployment.yaml
index f431a39..c5b5520 100755
--- a/smo-install/oran_oom/odu-app-ics-version/templates/deployment.yaml
+++ b/smo-install/oran_oom/odu-app-ics-version/templates/deployment.yaml
@@ -15,23 +15,12 @@
apiVersion: apps/v1
kind: Deployment
-metadata:
- name: {{ include "odu-app-ics-version.fullname" . }}
- labels:
- {{- include "odu-app-ics-version.labels" . | nindent 4 }}
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
replicas: {{ .Values.replicaCount }}
- selector:
- matchLabels:
- {{- include "odu-app-ics-version.selectorLabels" . | nindent 6 }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- {{- with .Values.podAnnotations }}
- annotations:
- {{- toYaml . | nindent 8 }}
- {{- end }}
- labels:
- {{- include "odu-app-ics-version.selectorLabels" . | nindent 8 }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
@@ -40,7 +29,7 @@
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- - name: {{ .Chart.Name }}
+ - name: {{ include "common.containername" . }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
diff --git a/smo-install/oran_oom/odu-app-ics-version/templates/service.yaml b/smo-install/oran_oom/odu-app-ics-version/templates/service.yaml
index aad3ac1..0f0441c 100755
--- a/smo-install/oran_oom/odu-app-ics-version/templates/service.yaml
+++ b/smo-install/oran_oom/odu-app-ics-version/templates/service.yaml
@@ -13,18 +13,4 @@
# limitations under the License.
# ============LICENSE_END=================================================
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "odu-app-ics-version.fullname" . }}
- labels:
- {{- include "odu-app-ics-version.labels" . | nindent 4 }}
-spec:
- type: {{ .Values.service.type }}
- ports:
- - port: {{ .Values.service.port }}
- targetPort: http
- protocol: TCP
- name: http
- selector:
- {{- include "odu-app-ics-version.selectorLabels" . | nindent 4 }}
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/odu-app-ics-version/values.yaml b/smo-install/oran_oom/odu-app-ics-version/values.yaml
index 54650db..27e861d 100755
--- a/smo-install/oran_oom/odu-app-ics-version/values.yaml
+++ b/smo-install/oran_oom/odu-app-ics-version/values.yaml
@@ -59,7 +59,9 @@
service:
type: ClusterIP
- port: 8095
+ ports:
+ - name: http
+ targetPort: 8095
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
diff --git a/smo-install/oran_oom/odu-app/Chart.yaml b/smo-install/oran_oom/odu-app/Chart.yaml
index a08d02b..fa4e5ec 100755
--- a/smo-install/oran_oom/odu-app/Chart.yaml
+++ b/smo-install/oran_oom/odu-app/Chart.yaml
@@ -3,3 +3,8 @@
description: A Helm chart to deploy odu-app smo version
name: odu-app
version: 1.0.0
+
+dependencies:
+ - name: nonrtric-common
+ version: ^2.0.0
+ repository: "@local"
diff --git a/smo-install/oran_oom/odu-app/templates/_helpers.tpl b/smo-install/oran_oom/odu-app/templates/_helpers.tpl
deleted file mode 100755
index 0220d2e..0000000
--- a/smo-install/oran_oom/odu-app/templates/_helpers.tpl
+++ /dev/null
@@ -1,79 +0,0 @@
-{{/*
-# Copyright (C) 2021 Nordix Foundation. All rights reserved.
-# ========================================================================
-# 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.
-# ============LICENSE_END=================================================
-*/}}
-
-{{/*
-Expand the name of the chart.
-*/}}
-{{- define "odu-app.name" -}}
-{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
-{{- end }}
-
-{{/*
-Create a default fully qualified app name.
-We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
-If release name contains chart name it will be used as a full name.
-*/}}
-{{- define "odu-app.fullname" -}}
-{{- if .Values.fullnameOverride }}
-{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
-{{- else }}
-{{- $name := default .Chart.Name .Values.nameOverride }}
-{{- if contains $name .Release.Name }}
-{{- .Release.Name | trunc 63 | trimSuffix "-" }}
-{{- else }}
-{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
-{{- end }}
-{{- end }}
-{{- end }}
-
-{{/*
-Create chart name and version as used by the chart label.
-*/}}
-{{- define "odu-app.chart" -}}
-{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
-{{- end }}
-
-{{/*
-Common labels
-*/}}
-{{- define "odu-app.labels" -}}
-helm.sh/chart: {{ include "odu-app.chart" . }}
-{{ include "odu-app.selectorLabels" . }}
-{{- if .Chart.AppVersion }}
-app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
-{{- end }}
-app.kubernetes.io/managed-by: {{ .Release.Service }}
-{{- end }}
-
-{{/*
-Selector labels
-*/}}
-{{- define "odu-app.selectorLabels" -}}
-app.kubernetes.io/name: {{ include "odu-app.name" . }}
-app.kubernetes.io/instance: {{ .Release.Name }}
-{{- end }}
-
-{{/*
-Create the name of the service account to use
-*/}}
-{{- define "odu-app.serviceAccountName" -}}
-{{- if .Values.serviceAccount.create }}
-{{- default (include "odu-app.fullname" .) .Values.serviceAccount.name }}
-{{- else }}
-{{- default "default" .Values.serviceAccount.name }}
-{{- end }}
-{{- end }}
diff --git a/smo-install/oran_oom/odu-app/templates/deployment.yaml b/smo-install/oran_oom/odu-app/templates/deployment.yaml
index 7978f8f..8a2f098 100755
--- a/smo-install/oran_oom/odu-app/templates/deployment.yaml
+++ b/smo-install/oran_oom/odu-app/templates/deployment.yaml
@@ -15,23 +15,12 @@
apiVersion: apps/v1
kind: Deployment
-metadata:
- name: {{ include "odu-app.fullname" . }}
- labels:
- {{- include "odu-app.labels" . | nindent 4 }}
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
replicas: {{ .Values.replicaCount }}
- selector:
- matchLabels:
- {{- include "odu-app.selectorLabels" . | nindent 6 }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- {{- with .Values.podAnnotations }}
- annotations:
- {{- toYaml . | nindent 8 }}
- {{- end }}
- labels:
- {{- include "odu-app.selectorLabels" . | nindent 8 }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
@@ -40,7 +29,7 @@
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- - name: {{ .Chart.Name }}
+ - name: {{ include "common.containername" . }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
@@ -58,10 +47,7 @@
value: "{{ .Values.sdnr.password }}"
- name: NODE_ID
value: "{{ .Values.simulator.node }}"
- ports:
- - name: http
- containerPort: 80
- protocol: TCP
+ ports: {{- include "common.containerPorts" . | nindent 10 }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
{{- with .Values.nodeSelector }}
diff --git a/smo-install/oran_oom/odu-app/templates/service.yaml b/smo-install/oran_oom/odu-app/templates/service.yaml
index 6c64790..0f0441c 100755
--- a/smo-install/oran_oom/odu-app/templates/service.yaml
+++ b/smo-install/oran_oom/odu-app/templates/service.yaml
@@ -13,18 +13,4 @@
# limitations under the License.
# ============LICENSE_END=================================================
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "odu-app.fullname" . }}
- labels:
- {{- include "odu-app.labels" . | nindent 4 }}
-spec:
- type: {{ .Values.service.type }}
- ports:
- - port: {{ .Values.service.port }}
- targetPort: http
- protocol: TCP
- name: http
- selector:
- {{- include "odu-app.selectorLabels" . | nindent 4 }}
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/odu-app/values.yaml b/smo-install/oran_oom/odu-app/values.yaml
index 8c97d64..96fbe07 100755
--- a/smo-install/oran_oom/odu-app/values.yaml
+++ b/smo-install/oran_oom/odu-app/values.yaml
@@ -56,7 +56,9 @@
service:
type: ClusterIP
- port: 80
+ ports:
+ - name: http
+ targetPort: 80
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
diff --git a/smo-install/oran_oom/oru-app/Chart.yaml b/smo-install/oran_oom/oru-app/Chart.yaml
index 680882a..aee48e4 100644
--- a/smo-install/oran_oom/oru-app/Chart.yaml
+++ b/smo-install/oran_oom/oru-app/Chart.yaml
@@ -3,3 +3,8 @@
description: A Helm chart to deploy oru-app
name: oru-app
version: 1.0.0
+
+dependencies:
+ - name: nonrtric-common
+ version: ^2.0.0
+ repository: "@local"
diff --git a/smo-install/oran_oom/oru-app/templates/configmap.yaml b/smo-install/oran_oom/oru-app/templates/configmap.yaml
index 259387f..b417a21 100644
--- a/smo-install/oran_oom/oru-app/templates/configmap.yaml
+++ b/smo-install/oran_oom/oru-app/templates/configmap.yaml
@@ -1,10 +1,5 @@
apiVersion: v1
kind: ConfigMap
-metadata:
- name: oru-app-configmap
- labels:
- name: oru-app
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+metadata: {{ include "common.resourceMetadata" . | nindent 2 }}
data:
{{ tpl (.Files.Glob "resources/config/*.{json,xml,txt}").AsConfig . | indent 2 }}
diff --git a/smo-install/oran_oom/oru-app/templates/configmapenv.yaml b/smo-install/oran_oom/oru-app/templates/configmapenv.yaml
index 3a10003..72a9ffa 100644
--- a/smo-install/oran_oom/oru-app/templates/configmapenv.yaml
+++ b/smo-install/oran_oom/oru-app/templates/configmapenv.yaml
@@ -1,15 +1,9 @@
apiVersion: v1
kind: ConfigMap
-metadata:
- name: oru-app-configmapenv
- labels:
- name: oru-app-env
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+metadata: {{ include "common.resourceMetadata" (dict "suffix" "configmapenv" "dot" . ) | nindent 2 }}
data:
MR-HOST: {{ .Values.conf.mrHost | quote }}
- MR-PORT: {{ .Values.conf.mrPort | quote }}
+ MR-PORT: {{ .Values.conf.mrPort | quote }}
SDNR-HOST: {{ .Values.conf.sdnrHost | quote }}
SDNR-PORT: {{ .Values.conf.sdnrPort | quote }}
VERBOSE: {{ .Values.conf.verbose | quote }}
-
diff --git a/smo-install/oran_oom/oru-app/templates/deployment.yaml b/smo-install/oran_oom/oru-app/templates/deployment.yaml
index 6999b95..e13084e 100644
--- a/smo-install/oran_oom/oru-app/templates/deployment.yaml
+++ b/smo-install/oran_oom/oru-app/templates/deployment.yaml
@@ -1,32 +1,21 @@
apiVersion: apps/v1
kind: Deployment
-metadata:
- name: oru-app
- labels:
- name: oru-app
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
replicas: {{ .Values.replicaCount }}
- selector:
- matchLabels:
- name: oru-app
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- name: oru-app
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
containers:
- - name: {{ .Chart.Name }}
+ - name: {{ include "common.containername" . }}
image: "{{ .Values.image.repository }}/{{ .Values.image.name}}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
tty: true
stdin: true
envFrom:
- configMapRef:
- name: oru-app-configmapenv
+ name: {{ include "common.name" . }}-configmapenv
volumeMounts:
- name: oru-app-config-volume
subPath: o-ru-to-o-du-map.txt
@@ -39,7 +28,7 @@
volumes:
- name: oru-app-config-volume
configMap:
- name: oru-app-configmap
+ name: {{ include "common.name" . }}
items:
- key: o-ru-to-o-du-map.txt
path: o-ru-to-o-du-map.txt
diff --git a/smo-install/oran_oom/oru-app/templates/service.yaml b/smo-install/oran_oom/oru-app/templates/service.yaml
index 46d78c6..f024c64 100644
--- a/smo-install/oran_oom/oru-app/templates/service.yaml
+++ b/smo-install/oran_oom/oru-app/templates/service.yaml
@@ -1,17 +1 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: "oru-app"
- labels:
- name: oru-app
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
-spec:
- type: {{ .Values.service.type }}
- ports:
- - port: {{ .Values.service.ports.port }}
- nodePort: {{ .Values.service.ports.nodePort }}
- selector:
- name: oru-app
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/oru-app/values.yaml b/smo-install/oran_oom/oru-app/values.yaml
index 66b2f15..45c5b99 100644
--- a/smo-install/oran_oom/oru-app/values.yaml
+++ b/smo-install/oran_oom/oru-app/values.yaml
@@ -9,7 +9,8 @@
service:
type: NodePort
ports:
- port: 830
+ - name: http
+ targetPort: 830
nodePort: 30835
simulators:
diff --git a/smo-install/oran_oom/policymanagementservice/Chart.yaml b/smo-install/oran_oom/policymanagementservice/Chart.yaml
index 5b5c0c6..f47bc80 100644
--- a/smo-install/oran_oom/policymanagementservice/Chart.yaml
+++ b/smo-install/oran_oom/policymanagementservice/Chart.yaml
@@ -23,4 +23,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/policymanagementservice/resources/config/application.yaml b/smo-install/oran_oom/policymanagementservice/resources/config/application.yaml
deleted file mode 100644
index ffb6f8c..0000000
--- a/smo-install/oran_oom/policymanagementservice/resources/config/application.yaml
+++ /dev/null
@@ -1,76 +0,0 @@
-################################################################################
-# Copyright (c) 2020 Nordix Foundation. #
-# #
-# 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. #
-################################################################################
-
-spring:
- profiles:
- active: prod
- main:
- allow-bean-definition-overriding: true
- aop:
- auto: false
-management:
- endpoints:
- web:
- exposure:
- # Enabling of springboot actuator features. See springboot documentation.
- include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
-
-logging:
- # Configuration of logging
- level:
- ROOT: ERROR
- org.springframework: ERROR
- org.springframework.data: ERROR
- org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
- org.onap.ccsdk.oran.a1policymanagementservice: INFO
- file:
- name: /var/log/policy-agent/application.log
-
-server:
- # Configuration of the HTTP/REST server. The parameters are defined and handeled by the springboot framework.
- # See springboot documentation.
- port : 8433
- http-port: 8081
- ssl:
- key-store-type: JKS
- key-store-password: policy_agent
- key-store: /opt/app/policy-agent/etc/cert/keystore.jks
- key-password: policy_agent
- key-alias: policy_agent
-app:
- # Location of the component configuration file. The file will only be used if the Consul database is not used;
- # configuration from the Consul will override the file.
- filepath: /var/policy-management-service/application_configuration.json
- webclient:
- # Configuration of the trust store used for the HTTP client (outgoing requests)
- # The file location and the password for the truststore is only relevant if trust-store-used == true
- # Note that the same keystore as for the server is used.
- trust-store-used: false
- trust-store-password: policy_agent
- trust-store: /opt/app/policy-agent/etc/cert/truststore.jks
- # Configuration of usage of HTTP Proxy for the southbound accesses.
- # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s
- http.proxy-host:
- http.proxy-port: 0
- http.proxy-type: HTTP
- # path where the service can store data
- vardata-directory: /var/policy-management-service
- # the config-file-schema-path referres to a location in the jar file. If this property is empty or missing,
- # no schema validation will be executed.
- config-file-schema-path: /application_configuration_schema.json
- # A file containing an authorization token, which shall be inserted in each HTTP header (authorization).
- # If the file name is empty, no authorization token is sent.
- auth-token-file:
diff --git a/smo-install/oran_oom/policymanagementservice/resources/data/application_configuration.json b/smo-install/oran_oom/policymanagementservice/resources/data/application_configuration.json
deleted file mode 100644
index 56e96aa..0000000
--- a/smo-install/oran_oom/policymanagementservice/resources/data/application_configuration.json
+++ /dev/null
@@ -1,84 +0,0 @@
-{
- "config":{
- "controller": [
- {
- "name": "controller1",
- "baseUrl": "https://a1controller:8383",
- "userName": "admin",
- "password": "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
- }
- ],
- "ric": [
- {
- "name":"ric1",
- "baseUrl":"https://a1-sim-osc-0:8185",
- "controller": "controller1",
- "managedElementIds":[
- "kista_1",
- "kista_2"
- ]
- },
- {
- "name":"ric2",
- "baseUrl":"https://a1-sim-osc-1:8185",
- "controller": "controller1",
- "managedElementIds":[
- "kista_1",
- "kista_2"
- ]
- },
- {
- "name":"ric3",
- "baseUrl":"https://a1-sim-std-0:8185",
- "controller": "controller1",
- "managedElementIds":[
- "kista_1",
- "kista_2"
- ]
- },
- {
- "name":"ric4",
- "baseUrl":"https://a1-sim-std-1:8185",
- "controller": "controller1",
- "managedElementIds":[
- "kista_1",
- "kista_2"
- ]
- },
- {
- "name":"ric5",
- "baseUrl":"https://a1-sim-std2-0:8185",
- "controller": "controller1",
- "managedElementIds":[
- "kista_1",
- "kista_2"
- ]
- },
- {
- "name":"ric6",
- "baseUrl":"https://a1-sim-std2-1:8185",
- "controller": "controller1",
- "managedElementIds":[
- "kista_1",
- "kista_2"
- ]
- }
- ],
- "streams_publishes": {
- "dmaap_publisher": {
- "type":"message_router",
- "dmaap_info":{
- "topic_url":"http://message-router.onap:3904/events/A1-POLICY-AGENT-WRITE"
- }
- }
- },
- "streams_subscribes": {
- "dmaap_subscriber":{
- "type":"message_router",
- "dmaap_info":{
- "topic_url":"http://message-router.onap:3904/events/A1-POLICY-AGENT-READ/users/policy-agent?timeout=15000&limit=100"
- }
- }
- }
- }
-}
diff --git a/smo-install/oran_oom/policymanagementservice/templates/configmap.yaml b/smo-install/oran_oom/policymanagementservice/templates/configmap.yaml
index 9c91f7d..20271d7 100644
--- a/smo-install/oran_oom/policymanagementservice/templates/configmap.yaml
+++ b/smo-install/oran_oom/policymanagementservice/templates/configmap.yaml
@@ -14,29 +14,11 @@
# limitations under the License. #
################################################################################
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.name.policymanagementservice" . }}-configmap-config
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.policymanagementservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
+{{ include "common.applicationConfigmap" . }}
---
apiVersion: v1
kind: ConfigMap
-metadata:
- name: {{ include "common.name.policymanagementservice" . }}-configmap-data
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.policymanagementservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
+metadata: {{ include "common.resourceMetadata" (dict "suffix" "data-configmap" "dot" . ) | nindent 2 }}
data:
-{{ tpl (.Files.Glob "resources/data/*").AsConfig . | indent 2 }}
\ No newline at end of file
+ application_configuration.json: |
+ {{- .Values.config | toRawJson | nindent 4 }}
diff --git a/smo-install/oran_oom/policymanagementservice/templates/ingress.yaml b/smo-install/oran_oom/policymanagementservice/templates/ingress.yaml
index e9158e2..9a20b72 100644
--- a/smo-install/oran_oom/policymanagementservice/templates/ingress.yaml
+++ b/smo-install/oran_oom/policymanagementservice/templates/ingress.yaml
@@ -16,13 +16,10 @@
################################################################################
*/}}
-{{- if .Values.policymanagementservice.ingress.enabled -}}
+{{- if (include "common.ingressEnabled" .) -}}
apiVersion: networking.k8s.io/v1
kind: Ingress
-metadata:
- name: {{ include "common.name.policymanagementservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
-
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
ingressClassName: {{ include "common.ingressClassName" . }}
rules:
@@ -30,9 +27,9 @@
paths:
- backend:
service:
- name: {{ include "common.name.policymanagementservice" . }}
+ name: {{ include "common.name" . }}
port:
- number: {{ .Values.policymanagementservice.service.internalPort1 }}
+ number: {{ (first .Values.service.ports).internalPort }}
path: "/a1-policy"
pathType: Prefix
{{- end -}}
diff --git a/smo-install/oran_oom/policymanagementservice/templates/service.yaml b/smo-install/oran_oom/policymanagementservice/templates/service.yaml
index 6d820e2..be38ac4 100644
--- a/smo-install/oran_oom/policymanagementservice/templates/service.yaml
+++ b/smo-install/oran_oom/policymanagementservice/templates/service.yaml
@@ -14,29 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.policymanagementservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.policymanagementservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- ports:
- {{if eq .Values.policymanagementservice.service.allowHttp true -}}
- - name: {{ index .Values.policymanagementservice.service.httpName }}
- port: {{ .Values.policymanagementservice.service.internalPort1 }}
- targetPort: {{ .Values.policymanagementservice.service.targetPort1 }}
- protocol: TCP
- {{- end }}
- - name: {{ index .Values.policymanagementservice.service.httpsName }}
- port: {{ .Values.policymanagementservice.service.internalPort2 }}
- targetPort: {{ .Values.policymanagementservice.service.targetPort2 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.policymanagementservice" . }}
- release: {{ .Release.Name }}
- type: ClusterIP
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/policymanagementservice/templates/statefulset.yaml b/smo-install/oran_oom/policymanagementservice/templates/statefulset.yaml
index 0930d07..5986f83 100644
--- a/smo-install/oran_oom/policymanagementservice/templates/statefulset.yaml
+++ b/smo-install/oran_oom/policymanagementservice/templates/statefulset.yaml
@@ -16,31 +16,15 @@
kind: StatefulSet
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.policymanagementservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.policymanagementservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
- serviceName: {{ include "common.name.policymanagementservice" . }}
+ serviceName: {{ include "common.name" . }}
replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.policymanagementservice" . }}
- release: {{ .Release.Name }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.policymanagementservice" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.policymanagementservice" . }}
+ hostname: {{ include "common.name" . }}
initContainers:
- name: copy
image: busybox:1.28
@@ -50,53 +34,30 @@
- FILE=/var/policy-management-service/application_configuration.json;
if [ ! -f $FILE ]; then
cp /etc/app/policy-management-service/initialdata/application_configuration.json $FILE;
- fi
+ fi;
+ chmod 666 $FILE;
volumeMounts:
- - name: {{ include "common.name.policymanagementservice" . }}-vardata
+ - name: {{ include "common.vardataMountName" . }}
mountPath: "/var/policy-management-service"
- - name: {{ include "common.name.policymanagementservice" . }}-policy-data
+ - name: {{ include "common.name" . }}-policy-data
mountPath: /etc/app/policy-management-service/initialdata
containers:
- - name: {{ include "common.container.policymanagementservice" . }}
- image: {{ .Values.policymanagementservice.image.registry }}/{{ .Values.policymanagementservice.image.name }}:{{ .Values.policymanagementservice.image.tag }}
- imagePullPolicy: {{ .Values.policymanagementservice.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.policymanagementservice.service.targetPort1 }}
- protocol: TCP
- - containerPort: {{ .Values.policymanagementservice.service.targetPort2 }}
- protocol: TCP
- readinessProbe:
- tcpSocket:
- port: {{ .Values.policymanagementservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.policymanagementservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.policymanagementservice.liveness.periodSeconds }}
- livenessProbe:
- httpGet:
- path: /status
- port: {{ .Values.policymanagementservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.policymanagementservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.policymanagementservice.liveness.periodSeconds }}
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 8 }}
+ {{- include "common.tcpsocketReadinessProbe" . | nindent 8 }}
+ {{- include "common.httpLiveProbe" . | nindent 8 }}
volumeMounts:
- - name: {{ include "common.name.policymanagementservice" . }}-vardata
- mountPath: "/var/policy-management-service"
- - name: {{ include "common.name.policymanagementservice" . }}-policy-config
+ - name: {{ include "common.applicationConfigMountName" . }}
mountPath: /opt/app/policy-agent/config
- - name: {{ include "common.name.policymanagementservice" . }}-policy-data
+ - name: {{ include "common.vardataMountName" . }}
+ mountPath: "/var/policy-management-service"
+ - name: {{ include "common.name" . }}-policy-data
mountPath: /etc/app/policy-management-service/initialdata
volumes:
- - name: {{ include "common.name.policymanagementservice" . }}-policy-config
+ {{- include "common.applicationConfigVolume" . | nindent 8 }}
+ - name: {{ include "common.name" . }}-policy-data
configMap:
- name: {{ include "common.name.policymanagementservice" . }}-configmap-config
- - name: {{ include "common.name.policymanagementservice" . }}-policy-data
- configMap:
- name: {{ include "common.name.policymanagementservice" . }}-configmap-data
- volumeClaimTemplates:
- - metadata:
- name: {{ include "common.name.policymanagementservice" . }}-vardata
- spec:
- accessModes:
- - ReadWriteOnce
- storageClassName: "{{ .Values.policymanagementservice.persistence.storageClassName }}"
- resources:
- requests:
- storage: "{{ .Values.policymanagementservice.persistence.size }}"
+ name: {{ include "common.name" . }}-data-configmap
+ volumeClaimTemplates: {{- include "common.vardataVolumeClaimTemplate" . | nindent 4 }}
diff --git a/smo-install/oran_oom/policymanagementservice/values.yaml b/smo-install/oran_oom/policymanagementservice/values.yaml
index b30dfb0..20de309 100644
--- a/smo-install/oran_oom/policymanagementservice/values.yaml
+++ b/smo-install/oran_oom/policymanagementservice/values.yaml
@@ -19,31 +19,148 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-policymanagementservice:
- imagePullPolicy: IfNotPresent
- image:
- registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
- name: nonrtric-plt-a1policymanagementservice
- tag: 2.7.0
- service:
- type: NodePort
- allowHttp: true
- httpName: http
- internalPort1: 8081
- targetPort1: 8081
- nodePort1: 30094
- httpsName: https
- internalPort2: 8433
- targetPort2: 8433
- nodePort2: 30095
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
- persistence:
- size: 2Gi
- storageClassName: standard
- ingress:
- enabled: false
+imagePullPolicy: IfNotPresent
+image:
+ registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
+ name: nonrtric-plt-a1policymanagementservice
+ tag: 2.7.0
+service:
+ type: NodePort
+ ports:
+ - name: http
+ internalPort: "8081"
+ targetPort: "8081"
+ nodePort: "30094"
+ name_tls: https
+ internalPort_tls: "8433"
+ targetPort_tls: "8433"
+ nodePort_tls: "30095"
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+persistence:
+ size: 2Gi
+ storageClassName: standard
+ingress:
+ enabled: false
+
+config:
+ config:
+ controller:
+ - name: controller1
+ baseUrl: https://a1controller:8383
+ userName: admin
+ password: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+ ric:
+ - name: ric1
+ baseUrl: https://a1-sim-osc-0:8185
+ controller: controller1
+ managedElementIds:
+ - kista_1
+ - kista_2
+ - name: ric2
+ baseUrl: https://a1-sim-osc-1:8185
+ controller: controller1
+ managedElementIds:
+ - kista_1
+ - kista_2
+ - name: ric3
+ baseUrl: https://a1-sim-std-0:8185
+ controller: controller1
+ managedElementIds:
+ - kista_1
+ - kista_2
+ - name: ric4
+ baseUrl: https://a1-sim-std-1:8185
+ controller: controller1
+ managedElementIds:
+ - kista_1
+ - kista_2
+ - name: ric5
+ baseUrl: https://a1-sim-std2-0:8185
+ controller: controller1
+ managedElementIds:
+ - kista_1
+ - kista_2
+ - name: ric6
+ baseUrl: https://a1-sim-std2-1:8185
+ controller: controller1
+ managedElementIds:
+ - kista_1
+ - kista_2
+ streams_publishes:
+ dmaap_publisher:
+ type: message_router
+ dmaap_info:
+ topic_url: http://message-router.onap:3904/events/A1-POLICY-AGENT-WRITE
+ streams_subscribes:
+ dmaap_subscriber:
+ type: message_router
+ dmaap_info:
+ topic_url: http://message-router.onap:3904/events/A1-POLICY-AGENT-READ/users/policy-agent?timeout=15000&limit=100
+
+
+application:
+ spring:
+ profiles:
+ active: prod
+ main:
+ allow-bean-definition-overriding: true
+ aop:
+ auto: false
+ management:
+ endpoints:
+ web:
+ exposure:
+ # Enabling of springboot actuator features. See springboot documentation.
+ include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
+
+ logging:
+ # Configuration of logging
+ level:
+ ROOT: ERROR
+ org.springframework: ERROR
+ org.springframework.data: ERROR
+ org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
+ org.onap.ccsdk.oran.a1policymanagementservice: INFO
+ file:
+ name: /var/log/policy-agent/application.log
+
+ server:
+ # Configuration of the HTTP/REST server. The parameters are defined and handeled by the springboot framework.
+ # See springboot documentation.
+ port : "8433"
+ http-port: "8081"
+ ssl:
+ key-store-type: JKS
+ key-store-password: policy_agent
+ key-store: /opt/app/policy-agent/etc/cert/keystore.jks
+ key-password: policy_agent
+ key-alias: policy_agent
+ app:
+ # Location of the component configuration file. The file will only be used if the Consul database is not used;
+ # configuration from the Consul will override the file.
+ filepath: /var/policy-management-service/application_configuration.json
+ webclient:
+ # Configuration of the trust store used for the HTTP client (outgoing requests)
+ # The file location and the password for the truststore is only relevant if trust-store-used == true
+ # Note that the same keystore as for the server is used.
+ trust-store-used: false
+ trust-store-password: policy_agent
+ trust-store: /opt/app/policy-agent/etc/cert/truststore.jks
+ # Configuration of usage of HTTP Proxy for the southbound accesses.
+ # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s
+ http.proxy-host:
+ http.proxy-port: 0
+ http.proxy-type: HTTP
+ # path where the service can store data
+ vardata-directory: /var/policy-management-service
+ # the config-file-schema-path referres to a location in the jar file. If this property is empty or missing,
+ # no schema validation will be executed.
+ config-file-schema-path: /application_configuration_schema.json
+ # A file containing an authorization token, which shall be inserted in each HTTP header (authorization).
+ # If the file name is empty, no authorization token is sent.
+ auth-token-file:
diff --git a/smo-install/oran_oom/rappcatalogueservice/Chart.yaml b/smo-install/oran_oom/rappcatalogueservice/Chart.yaml
index 4d28e41..a6eeabb 100644
--- a/smo-install/oran_oom/rappcatalogueservice/Chart.yaml
+++ b/smo-install/oran_oom/rappcatalogueservice/Chart.yaml
@@ -23,4 +23,4 @@
dependencies:
- name: nonrtric-common
version: ^2.0.0
- repository: "@local"
\ No newline at end of file
+ repository: "@local"
diff --git a/smo-install/oran_oom/rappcatalogueservice/templates/deployment.yaml b/smo-install/oran_oom/rappcatalogueservice/templates/deployment.yaml
index 95304c5..810c7d3 100644
--- a/smo-install/oran_oom/rappcatalogueservice/templates/deployment.yaml
+++ b/smo-install/oran_oom/rappcatalogueservice/templates/deployment.yaml
@@ -16,46 +16,17 @@
kind: Deployment
apiVersion: apps/v1
-metadata:
- name: {{ include "common.name.rappcatalogueservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- generation: 1
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.rappcatalogueservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
- annotations:
- deployment.kubernetes.io/revision: '1'
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.rappcatalogueservice" . }}
- release: {{ .Release.Name }}
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.rappcatalogueservice" . }}
- release: {{ .Release.Name }}
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
spec:
- hostname: {{ include "common.name.rappcatalogueservice" . }}
+ hostname: {{ include "common.name" . }}
containers:
- - name: {{ include "common.container.rappcatalogueservice" . }}
- image: {{ .Values.rappcatalogueservice.image.registry }}/{{ .Values.rappcatalogueservice.image.name }}:{{ .Values.rappcatalogueservice.image.tag }}
- imagePullPolicy: {{ .Values.rappcatalogueservice.imagePullPolicy }}
- ports:
- - containerPort: {{ .Values.rappcatalogueservice.service.targetPort1 }}
- protocol: TCP
- - containerPort: {{ .Values.rappcatalogueservice.service.targetPort2 }}
- protocol: TCP
- readinessProbe:
- tcpSocket:
- port: {{ .Values.rappcatalogueservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.rappcatalogueservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.rappcatalogueservice.liveness.periodSeconds }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.rappcatalogueservice.service.targetPort1 }}
- initialDelaySeconds: {{ .Values.rappcatalogueservice.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.rappcatalogueservice.liveness.periodSeconds }}
+ - name: {{ include "common.containername" . }}
+ image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+ imagePullPolicy: {{ .Values.imagePullPolicy }}
+ ports: {{- include "common.containerPorts" . | nindent 8 }}
+ {{- include "common.tcpsocketProbes" . | nindent 8 }}
diff --git a/smo-install/oran_oom/rappcatalogueservice/templates/service.yaml b/smo-install/oran_oom/rappcatalogueservice/templates/service.yaml
index 2c056eb..be38ac4 100644
--- a/smo-install/oran_oom/rappcatalogueservice/templates/service.yaml
+++ b/smo-install/oran_oom/rappcatalogueservice/templates/service.yaml
@@ -14,29 +14,4 @@
# limitations under the License. #
################################################################################
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ include "common.name.rappcatalogueservice" . }}
- namespace: {{ include "common.namespace.nonrtric" . }}
- labels:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.rappcatalogueservice" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ .Release.Name }}
- heritage: {{ .Release.Service }}
-spec:
- ports:
- {{if eq .Values.rappcatalogueservice.service.allowHttp true -}}
- - name: {{ index .Values.rappcatalogueservice.service.httpName }}
- port: {{ .Values.rappcatalogueservice.service.internalPort1 }}
- targetPort: {{ .Values.rappcatalogueservice.service.targetPort1 }}
- protocol: TCP
- {{- end }}
- - name: {{ index .Values.rappcatalogueservice.service.httpsName }}
- port: {{ .Values.rappcatalogueservice.service.internalPort2 }}
- targetPort: {{ .Values.rappcatalogueservice.service.targetPort2 }}
- protocol: TCP
- selector:
- app: {{ include "common.namespace.nonrtric" . }}-{{ include "common.name.rappcatalogueservice" . }}
- release: {{ .Release.Name }}
- type: ClusterIP
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/rappcatalogueservice/values.yaml b/smo-install/oran_oom/rappcatalogueservice/values.yaml
index a59059d..ecf1ea7 100644
--- a/smo-install/oran_oom/rappcatalogueservice/values.yaml
+++ b/smo-install/oran_oom/rappcatalogueservice/values.yaml
@@ -18,23 +18,23 @@
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
-rappcatalogueservice:
- imagePullPolicy: IfNotPresent
- image:
- registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
- name: nonrtric-plt-rappcatalogue
- tag: 1.2.0
- service:
- allowHttp: true
- httpName: http
- internalPort1: 9085
- targetPort1: 8680
- httpsName: https
- internalPort2: 9086
- targetPort2: 8633
- liveness:
- initialDelaySeconds: 20
- periodSeconds: 10
- readiness:
- initialDelaySeconds: 20
- periodSeconds: 10
+imagePullPolicy: IfNotPresent
+image:
+ registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
+ name: nonrtric-plt-rappcatalogue
+ tag: 1.2.0
+service:
+ type: ClusterIP
+ ports:
+ - name: http
+ internalPort: "9085"
+ targetPort: "8680"
+ name_tls: https
+ internalPort_tls: "9086"
+ targetPort_tls: "8633"
+liveness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
+readiness:
+ initialDelaySeconds: 20
+ periodSeconds: 10
diff --git a/smo-install/oran_oom/ric-common/templates/_influxdb.tpl b/smo-install/oran_oom/ric-common/templates/_influxdb.tpl
index c6be83c..006b48d 100644
--- a/smo-install/oran_oom/ric-common/templates/_influxdb.tpl
+++ b/smo-install/oran_oom/ric-common/templates/_influxdb.tpl
@@ -1,57 +1,57 @@
-################################################################################
-# Copyright (c) 2021 HCL Technologies Limited. #
-# #
-# 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. #
-################################################################################
-
-{{- define "common.name.influxdb" -}}
- {{- printf "influxdb" -}}
-{{- end -}}
-
-{{- define "common.fullname.influxdb" -}}
- {{- $name := ( include "common.name.influxdb" . ) -}}
- {{- $namespace := ( include "common.namespace.platform" . ) -}}
- {{- printf "%s-%s" $namespace $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{- define "common.influxdb.chart" -}}
-{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{- define "common.influxdb.labels" -}}
-helm.sh/chart: {{ include "common.influxdb.chart" . }}
-{{ include "common.influxdb.selectorLabels" . }}
-{{- if .Chart.AppVersion }}
-app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
-{{- end }}
-app.kubernetes.io/managed-by: {{ .Release.Service }}
-{{- end -}}
-
-{{- define "common.influxdb.selectorLabels" -}}
-app.kubernetes.io/name: {{ include "common.name.influxdb" . }}
-app.kubernetes.io/instance: {{ .Release.Name }}
-{{- end -}}
-
-{{- define "common.influxdb.serviceAccountName" -}}
- {{- $name := ( include "common.fullname.influxdb" . ) -}}
- {{- printf "service-%s-http" $name | trunc 63 | trimSuffix "-" -}}
-{{- end -}}
-
-{{- define "common.serviceport.influxdb.http" -}}8086{{- end -}}
-{{- define "common.serviceport.influxdb.meta.bind_address" -}}8091{{- end -}}
-{{- define "common.serviceport.influxdb.http.bind_address" -}}8086{{- end -}}
-{{- define "common.serviceport.influxdb.rpc.bind_address" -}}8088{{- end -}}
-{{- define "common.serviceport.influxdb.graphite.bind_address" -}}2003{{- end -}}
-{{- define "common.serviceport.influxdb.udp.bind_address" -}}8089{{- end -}}
-{{- define "common.serviceport.influxdb.opentsdb.bind_address" -}}4242{{- end -}}
-{{- define "common.serviceport.influxdb.collectd.bind_address" -}}25826{{- end -}}
+################################################################################
+# Copyright (c) 2021 HCL Technologies Limited. #
+# #
+# 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. #
+################################################################################
+
+{{- define "common.name.influxdb" -}}
+ {{- printf "influxdb" -}}
+{{- end -}}
+
+{{- define "common.fullname.influxdb" -}}
+ {{- $name := ( include "common.name.influxdb" . ) -}}
+ {{- $namespace := ( include "common.namespace.platform" . ) -}}
+ {{- printf "%s-%s" $namespace $name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{- define "common.influxdb.chart" -}}
+{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{- define "common.influxdb.labels" -}}
+helm.sh/chart: {{ include "common.influxdb.chart" . }}
+{{ include "common.influxdb.selectorLabels" . }}
+{{- if .Chart.AppVersion }}
+app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
+{{- end }}
+app.kubernetes.io/managed-by: {{ .Release.Service }}
+{{- end -}}
+
+{{- define "common.influxdb.selectorLabels" -}}
+app.kubernetes.io/name: {{ include "common.name.influxdb" . }}
+app.kubernetes.io/instance: {{ .Release.Name }}
+{{- end -}}
+
+{{- define "common.influxdb.serviceAccountName" -}}
+ {{- $name := ( include "common.fullname.influxdb" . ) -}}
+ {{- printf "service-%s-http" $name | trunc 63 | trimSuffix "-" -}}
+{{- end -}}
+
+{{- define "common.serviceport.influxdb.http" -}}8086{{- end -}}
+{{- define "common.serviceport.influxdb.meta.bind_address" -}}8091{{- end -}}
+{{- define "common.serviceport.influxdb.http.bind_address" -}}8086{{- end -}}
+{{- define "common.serviceport.influxdb.rpc.bind_address" -}}8088{{- end -}}
+{{- define "common.serviceport.influxdb.graphite.bind_address" -}}2003{{- end -}}
+{{- define "common.serviceport.influxdb.udp.bind_address" -}}8089{{- end -}}
+{{- define "common.serviceport.influxdb.opentsdb.bind_address" -}}4242{{- end -}}
+{{- define "common.serviceport.influxdb.collectd.bind_address" -}}25826{{- end -}}
diff --git a/smo-install/oran_oom/ric-common/templates/_tiller.tpl b/smo-install/oran_oom/ric-common/templates/_tiller.tpl
index d423c39..f9d2709 100644
--- a/smo-install/oran_oom/ric-common/templates/_tiller.tpl
+++ b/smo-install/oran_oom/ric-common/templates/_tiller.tpl
@@ -27,7 +27,7 @@
{{- end -}}
{{- else -}}
{{- with index $ctx $currentkey }}
- {{- $newctx := dict "ctx" . "printkeys" $restkeys -}}
+ {{- $newctx := dict "ctx" . "printkeys" $restkeys -}}
{{- include "recursiveprinter" $newctx -}}
{{- end -}}
{{- end -}}
@@ -39,7 +39,7 @@
{{- if hasKey $topctx.Values.common "tillers" }}
{{- $ctx := index $topctx.Values.common.tillers .key -}}
{{- if not (empty $ctx) -}}
- {{- $newctx := dict "ctx" $ctx "printkeys" .printkey -}}
+ {{- $newctx := dict "ctx" $ctx "printkeys" .printkey -}}
{{- include "recursiveprinter" $newctx -}}
{{- end -}}
{{- end -}}
diff --git a/smo-install/oran_oom/topology/Chart.yaml b/smo-install/oran_oom/topology/Chart.yaml
index 47dd953..759db6f 100644
--- a/smo-install/oran_oom/topology/Chart.yaml
+++ b/smo-install/oran_oom/topology/Chart.yaml
@@ -17,3 +17,8 @@
description: A Helm chart to deploy topology
name: topology
version: 1.0.0
+
+dependencies:
+ - name: nonrtric-common
+ version: ^2.0.0
+ repository: "@local"
diff --git a/smo-install/oran_oom/topology/templates/configmapenv.yaml b/smo-install/oran_oom/topology/templates/configmapenv.yaml
index 8a06b08..2991abf 100644
--- a/smo-install/oran_oom/topology/templates/configmapenv.yaml
+++ b/smo-install/oran_oom/topology/templates/configmapenv.yaml
@@ -14,15 +14,10 @@
apiVersion: v1
kind: ConfigMap
-metadata:
- name: topology-configmapenv
- labels:
- name: topology-env
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+metadata: {{ include "common.resourceMetadata" (dict "suffix" "configmapenv" "dot" . ) | nindent 2 }}
data:
AUTH_ENABLED: {{ .Values.conf.authEnabled | quote }}
- AUTH_HOST_URL: {{ .Values.conf.authHostUrl | quote }}
+ AUTH_HOST_URL: {{ .Values.conf.authHostUrl | quote }}
PROVIDERS: {{ .Values.conf.providers | quote }}
LOAD_PACKAGES: {{ .Values.conf.loadPackages | quote }}
diff --git a/smo-install/oran_oom/topology/templates/deployment.yaml b/smo-install/oran_oom/topology/templates/deployment.yaml
index 9da2f13..aa14195 100644
--- a/smo-install/oran_oom/topology/templates/deployment.yaml
+++ b/smo-install/oran_oom/topology/templates/deployment.yaml
@@ -14,33 +14,22 @@
apiVersion: apps/v1
kind: Deployment
-metadata:
- name: topology
- labels:
- name: topology
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
spec:
replicas: {{ .Values.replicaCount }}
- selector:
- matchLabels:
- name: topology
+ selector: {{- include "common.selectors" . | nindent 4 }}
template:
- metadata:
- labels:
- name: topology
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
- spec:
+ metadata: {{- include "common.templateMetadata" . | nindent 6 }}
+ spec:
containers:
- - name: {{ .Chart.Name }}
+ - name: {{ include "common.containername" . }}
image: "{{ .Values.image.repository }}/{{ .Values.image.name}}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
tty: true
stdin: true
envFrom:
- configMapRef:
- name: topology-configmapenv
+ name: {{ include "common.name" . }}-configmapenv
securityContext:
capabilities:
add:
diff --git a/smo-install/oran_oom/topology/templates/service.yaml b/smo-install/oran_oom/topology/templates/service.yaml
index 1ccb79e..879f61d 100644
--- a/smo-install/oran_oom/topology/templates/service.yaml
+++ b/smo-install/oran_oom/topology/templates/service.yaml
@@ -12,20 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-apiVersion: v1
-kind: Service
-metadata:
- name: "topology"
- labels:
- name: topology
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
-spec:
- type: {{ .Values.service.type }}
- ports:
- - port: {{ .Values.service.ports.port }}
- nodePort: {{ .Values.service.ports.nodePort }}
- selector:
- name: topology
- release: {{ .Release.Name }}
- chart: {{ .Chart.Name }}
+{{ include "common.service" . }}
diff --git a/smo-install/oran_oom/topology/values.yaml b/smo-install/oran_oom/topology/values.yaml
index 0781e2b..d7a6a4f 100644
--- a/smo-install/oran_oom/topology/values.yaml
+++ b/smo-install/oran_oom/topology/values.yaml
@@ -23,7 +23,9 @@
service:
type: NodePort
ports:
- port: 3001
+ - name: http
+ internalPort: "3001"
+ targetPort: "3001"
nodePort: 32001
conf: