Use OSC Nexus proxy repository for docker hub images 00/15100/3
authoraravind.est <aravindhan.a@est.tech>
Tue, 30 Sep 2025 16:28:05 +0000 (17:28 +0100)
committeraravind.est <aravindhan.a@est.tech>
Thu, 2 Oct 2025 12:52:51 +0000 (13:52 +0100)
Nexus proxy repository has been used to fetch the images that are available in docker hub.
Charts refactored to have a common template to use for OSC release/snapshot/staging repository.
Required images has been replicated to the nexus proxy and used in the respective charts.

Issue-ID: NONRTRIC-1076
Change-Id: I255b3eef9090600d216f9ca26f8ad48f7bc5b503
Signed-off-by: aravind.est <aravindhan.a@est.tech>
72 files changed:
smo-install/helm-override/default/onap-override.yaml
smo-install/oran_oom/a1simulator/templates/deployment.yaml
smo-install/oran_oom/a1simulator/values.yaml
smo-install/oran_oom/capifcore/templates/deployment.yaml
smo-install/oran_oom/capifcore/values.yaml
smo-install/oran_oom/controlpanel/templates/deployment.yaml
smo-install/oran_oom/controlpanel/values.yaml
smo-install/oran_oom/dmaapadapterservice/templates/statefulset.yaml
smo-install/oran_oom/dmaapadapterservice/values.yaml
smo-install/oran_oom/dmeparticipant/templates/deployment.yaml
smo-install/oran_oom/dmeparticipant/values.yaml
smo-install/oran_oom/informationservice/templates/statefulset.yaml
smo-install/oran_oom/informationservice/values.yaml
smo-install/oran_oom/kong/values.yaml
smo-install/oran_oom/nonrtric-common/templates/_repositories.tpl [new file with mode: 0644]
smo-install/oran_oom/nonrtric-common/values.yaml
smo-install/oran_oom/nonrtricgateway/templates/deployment.yaml
smo-install/oran_oom/nonrtricgateway/values.yaml
smo-install/oran_oom/policymanagementservice/templates/statefulset.yaml
smo-install/oran_oom/policymanagementservice/values.yaml
smo-install/oran_oom/rappmanager/templates/statefulset.yaml
smo-install/oran_oom/rappmanager/values.yaml
smo-install/oran_oom/servicemanager/templates/deployment.yaml
smo-install/oran_oom/servicemanager/values.yaml
smo-install/oran_oom/smo/common/influxdb2/templates/app-statefulset.yaml
smo-install/oran_oom/smo/common/influxdb2/values.yaml [new file with mode: 0644]
smo-install/oran_oom/smo/common/kafka-client/templates/app-pod.yaml
smo-install/oran_oom/smo/common/kafka-client/values.yaml [new file with mode: 0644]
smo-install/oran_oom/smo/common/keycloak-proxy/templates/app-deployment.yaml
smo-install/oran_oom/smo/common/keycloak-proxy/values.yaml [new file with mode: 0644]
smo-install/oran_oom/smo/common/keycloak/templates/app-deployment.yaml
smo-install/oran_oom/smo/common/keycloak/values.yaml [new file with mode: 0644]
smo-install/oran_oom/smo/common/minio/templates/app-statefulset.yaml
smo-install/oran_oom/smo/common/minio/templates/client-pod.yaml
smo-install/oran_oom/smo/common/minio/values.yaml
smo-install/oran_oom/smo/common/opa-rule-db/templates/app-deployment.yaml
smo-install/oran_oom/smo/common/opa-rule-db/values.yaml [new file with mode: 0644]
smo-install/oran_oom/smo/common/opa/templates/opa-deployment.yaml
smo-install/oran_oom/smo/common/opa/values.yaml
smo-install/oran_oom/smo/common/redpanda-console/templates/app-deployment.yaml
smo-install/oran_oom/smo/common/redpanda-console/values.yaml
smo-install/oran_oom/smo/common/templates/cps-kafkauser-patch.yaml
smo-install/oran_oom/smo/common/templates/policy-kafkauser-patch.yaml
smo-install/oran_oom/smo/common/templates/strimzi-patch.yaml
smo-install/oran_oom/smo/common/templates/vescollector-patch.yaml
smo-install/oran_oom/smo/common/values.yaml
smo-install/oran_oom/smo/ranpm/charts/dfc/templates/app-statefulset.yaml
smo-install/oran_oom/smo/ranpm/charts/dfc/values.yaml
smo-install/oran_oom/smo/ranpm/charts/kafka-producer-pm-json2influx/templates/app-statefulset.yaml
smo-install/oran_oom/smo/ranpm/charts/kafka-producer-pm-json2influx/values.yaml
smo-install/oran_oom/smo/ranpm/charts/kafka-producer-pm-json2kafka/templates/app-statefulset.yaml
smo-install/oran_oom/smo/ranpm/charts/kafka-producer-pm-json2kafka/values.yaml
smo-install/oran_oom/smo/ranpm/charts/kafka-producer-pm-xml2json/templates/app-statefulset.yaml
smo-install/oran_oom/smo/ranpm/charts/kafka-producer-pm-xml2json/values.yaml
smo-install/oran_oom/smo/ranpm/charts/nrt-pm-log/templates/app-statefulset.yaml
smo-install/oran_oom/smo/ranpm/charts/nrt-pm-log/values.yaml
smo-install/oran_oom/smo/ranpm/charts/pm-producer-json2kafka/templates/app-statefulset.yaml
smo-install/oran_oom/smo/ranpm/charts/pm-producer-json2kafka/values.yaml
smo-install/oran_oom/smo/ranpm/templates/ics-init.yaml
smo-install/oran_oom/smo/ranpm/templates/influxdb2-init.yaml
smo-install/oran_oom/smo/ranpm/templates/keycloak-init.yaml
smo-install/oran_oom/smo/ranpm/values.yaml
smo-install/oran_oom/smo/smo-common/templates/_repositories.tpl [new file with mode: 0644]
smo-install/oran_oom/smo/smo-common/values.yaml [new file with mode: 0644]
smo-install/oran_oom/smo/topology-exposure-inventory/charts/ncmp-to-teiv-adapter/templates/deployment.yaml
smo-install/oran_oom/smo/topology-exposure-inventory/charts/ncmp-to-teiv-adapter/values.yaml
smo-install/oran_oom/smo/topology-exposure-inventory/charts/topology-exposure-inventory/templates/deployment.yaml
smo-install/oran_oom/smo/topology-exposure-inventory/charts/topology-exposure-inventory/values.yaml
smo-install/oran_oom/smo/topology-exposure-inventory/values.yaml
smo-install/oran_oom/topology/templates/deployment.yaml
smo-install/oran_oom/topology/values.yaml
smo-install/scripts/sub-scripts/preconfigure-smo.sh

index 4ae8e60..94f61c2 100644 (file)
@@ -35,7 +35,8 @@ global:
   # repository but ONLY if your repository mirrors all ONAP
   # docker images. This includes all images from dockerhub and
   # any other repository that hosts images for ONAP components.
-  repository: nexus3.onap.org:10001
+  repository: &nexusDockerProxyRepo nexus3.onap.org:10001
+  dockerHubRepository: *nexusDockerProxyRepo
 
   # readiness check - temporary repo until images migrated to nexus3
   readinessRepository: oomk8s
index bf4538c..fc6e09b 100644 (file)
@@ -25,7 +25,7 @@ spec:
       hostname: "{{ $a1sim.name }}"
       containers:
         - name: {{ $.Chart.Name }}
-          image: "{{ $.Values.image.repository }}/{{ $.Values.image.name}}:{{ $.Values.image.tag }}"
+          image: "{{ include "repository.nexusReleaseRepo" . }}/{{ $.Values.image.name}}:{{ $.Values.image.tag }}"
           imagePullPolicy: {{ $.Values.image.pullPolicy }}
           tty: true
           stdin: true
index 4365634..12d66ea 100644 (file)
@@ -16,8 +16,7 @@
 #  ============LICENSE_END==================================================
 
 image:
-  repository: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
-  name: a1-simulator
+  name: 'o-ran-sc/a1-simulator'
   tag: 2.8.1
   pullPolicy: IfNotPresent
 service:
index 916f497..2339ee3 100644 (file)
@@ -1,5 +1,5 @@
 ################################################################################
-#   Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved.       #
+#   Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.           #
@@ -26,7 +26,7 @@ spec:
       hostname: {{ include "common.name" . }}
       containers:
       - name:  {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusStagingRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports: {{- include "common.containerPorts" . | nindent 8 }}
         {{- include "common.tcpsocketProbes" . | nindent 8 }}
index fb4e1cd..87a8007 100644 (file)
@@ -1,5 +1,5 @@
 #  ============LICENSE_START===============================================
-# Copyright (C) 2023-2024 OpenInfra Foundation Europe. All rights reserved.
+# Copyright (C) 2023-2025 OpenInfra Foundation Europe. 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.
@@ -20,8 +20,7 @@
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: 'nexus3.o-ran-sc.org:10004/o-ran-sc'
-  name: nonrtric-plt-capifcore
+  name: 'o-ran-sc/nonrtric-plt-capifcore'
   tag: 1.4.0
 service:
   type: ClusterIP
index ff93fd5..871d88d 100644 (file)
@@ -1,5 +1,6 @@
 ################################################################################
-#   Copyright (c) 2020 Nordix Foundation.                                      #
+#   Copyright (c) 2020-2023 Nordix Foundation.                                 #
+#   Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.           #
@@ -26,7 +27,7 @@ spec:
       hostname: {{ include "common.name" . }}
       containers:
         - name: {{ include "common.containername" . }}
-          image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+          image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
           imagePullPolicy: {{ .Values.imagePullPolicy }}
           ports: {{- include "common.containerPorts" . | nindent 10 }}
           {{- include "common.tcpsocketProbes" . | nindent 10 }}
index f1d439a..cfc22ab 100644 (file)
@@ -1,5 +1,6 @@
 ################################################################################
-#   Copyright (c) 2020 Nordix Foundation.                                      #
+#   Copyright (c) 2020-2023 Nordix Foundation.                                 #
+#   Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.           #
@@ -20,8 +21,7 @@
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
-  name: nonrtric-controlpanel
+  name: 'o-ran-sc/nonrtric-controlpanel'
   tag: 2.5.0
 replicaCount: 1
 liveness:
index aff1a27..8cdf46f 100644 (file)
@@ -1,5 +1,6 @@
 ################################################################################
-#   Copyright (c) 2021 Nordix Foundation.                                      #
+#   Copyright (c) 2021-2023 Nordix Foundation.                                 #
+#   Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.           #
@@ -27,7 +28,7 @@ spec:
       hostname: {{ include "common.name" . }}
       containers:
       - name: {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports: {{- include "common.containerPorts" . | nindent 8 }}
         {{- include "common.tcpsocketProbes" . | nindent 8 }}
index 62cc766..c3b0d29 100644 (file)
@@ -1,6 +1,6 @@
 ################################################################################
 #  Copyright (c) 2021-22 Nordix Foundation. All rights reserved.               #
-#  Copyright (C) 2023-2024 OpenInfra Foundation Europe. All rights reserved.   #
+#  Copyright (C) 2023-2025 OpenInfra Foundation Europe. 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.           #
@@ -21,8 +21,7 @@
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
-  name: "nonrtric-plt-dmaapadapter"
+  name: "o-ran-sc/nonrtric-plt-dmaapadapter"
   tag: 1.4.0
 service:
   type: ClusterIP
index a033d37..bca87d5 100644 (file)
@@ -27,7 +27,7 @@ spec:
       hostname: {{ include "common.name" . }}
       containers:
       - name: {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports: {{- include "common.containerPorts" . | nindent 8 }}
         {{- include "common.tcpsocketProbes" . | nindent 8 }}
index 37a9a58..4985cdd 100644 (file)
@@ -21,8 +21,7 @@
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
-  name: nonrtric-plt-participant-impl-dme
+  name: 'o-ran-sc/nonrtric-plt-participant-impl-dme'
   tag: 0.3.0
 service:
   type: ClusterIP
index 1436a9d..b362b9a 100644 (file)
@@ -33,14 +33,14 @@ spec:
           - -c
           - mkdir /var/information-coordinator-service/database;
             chown -R 999:1000 /var/information-coordinator-service;
-          image: busybox:1.28
+          image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.initContainer.image.name }}:{{ .Values.initContainer.image.tag }}
           imagePullPolicy: {{ .Values.imagePullPolicy }}
           volumeMounts:
           - name: {{ include "common.vardataMountName" . }}
             mountPath: /var/information-coordinator-service
       containers:
       - name: {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports: {{- include "common.containerPorts" . | nindent 8 }}
         {{- include "common.tcpsocketReadinessProbe" . | nindent 8 }}
index 11f0ff4..da9147a 100644 (file)
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
-  name: "nonrtric-plt-informationcoordinatorservice"
+  name: "o-ran-sc/nonrtric-plt-informationcoordinatorservice"
   tag: 1.6.1
+initContainer:
+  image:
+    name: busybox
+    tag: 1.28
 service:
   type: ClusterIP
   ports:
index 71ca5c4..3addf10 100644 (file)
 #  limitations under the License.
 #  ============LICENSE_END=================================================
 
+
+# This is used by the postgres container
+global:
+  imageRegistry: "nexus3.o-ran-sc.org:10001"
+  kongImage: &kongImage "nexus3.o-ran-sc.org:10001/kong"
+  kongIngressImage: &kongIngressImage "nexus3.o-ran-sc.org:10001/kong/kubernetes-ingress-controller"
+
 # Default values for Kong PV and PVC
 
 kongpv:
@@ -56,7 +63,7 @@ kong:
     database: "postgres"
   # Specify Kong's Docker image and repository details here
   image:
-    repository: kong
+    repository: *kongImage
     tag: "3.4"
     pullPolicy: IfNotPresent
   # Specify Kong admin API service and listener configuration
@@ -112,7 +119,7 @@ kong:
     enabled: true
     installCRDs: false
     image:
-      repository: kong/kubernetes-ingress-controller
+      repository: *kongIngressImage
       tag: "3.0"
     env:
       kong_admin_tls_skip_verify: true
@@ -135,7 +142,7 @@ kong:
     volumePermissions:
       enabled: true
       image:
-        repository: bitnami/os-shell
+        repository: bitnamilegacy/os-shell
     primary:
       persistence:
         existingClaim: data-oran-nonrtric-postgresql-0
diff --git a/smo-install/oran_oom/nonrtric-common/templates/_repositories.tpl b/smo-install/oran_oom/nonrtric-common/templates/_repositories.tpl
new file mode 100644 (file)
index 0000000..ba11612
--- /dev/null
@@ -0,0 +1,43 @@
+{{/*
+################################################################################
+#   Copyright (c) 2025 OpenInfra Foundation Europe.                            #
+#                                                                              #
+#   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 "repository.nexusRepo" -}}
+  {{- $repoKey := .repoKey | required "repoKey is required" -}}
+  {{- $default := .default | default "" -}}
+  {{- $dot := .dot | default . -}}
+  {{- $values := $dot.Values | default (dict) -}}
+  {{- $localValue := get $values $repoKey | default "" -}}
+  {{- $globalValue := get ($values.global | default (dict)) $repoKey | default "" -}}
+  {{- coalesce $localValue $globalValue $default -}}
+{{- end -}}
+
+{{- define "repository.nexusProxyRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusProxyRepo" "default" "nexus3.o-ran-sc.org:10001") -}}
+{{- end -}}
+
+{{- define "repository.nexusReleaseRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusReleaseRepo" "default" "nexus3.o-ran-sc.org:10002") -}}
+{{- end -}}
+
+{{- define "repository.nexusSnapshotRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusSnapshotRepo" "default" "nexus3.o-ran-sc.org:10003") -}}
+{{- end -}}
+
+{{- define "repository.nexusStagingRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusStagingRepo" "default" "nexus3.o-ran-sc.org:10004") -}}
+{{- end -}}
index 993d88d..6eb4f0c 100644 (file)
@@ -1,5 +1,6 @@
 ################################################################################
-#   Copyright (c) 2020 Nordix Foundation.                                      #
+#   Copyright (c) 2020-2023 Nordix Foundation.                                 #
+#   Copyright (c) 2023-2025 OpenInfra Foundation Europe. 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.           #
@@ -13,3 +14,9 @@
 #   See the License for the specific language governing permissions and        #
 #   limitations under the License.                                             #
 ################################################################################
+
+global:
+  nexusProxyRepo: "nexus3.o-ran-sc.org:10001"
+  nexusReleaseRepo: "nexus3.o-ran-sc.org:10002"
+  nexusSnapshotRepo: "nexus3.o-ran-sc.org:10003"
+  nexusStagingRepo: "nexus3.o-ran-sc.org:10004"
\ No newline at end of file
index 02789f1..27f8138 100644 (file)
@@ -1,5 +1,6 @@
 ################################################################################
-#   Copyright (c) 2021 Nordix Foundation.                                      #
+#   Copyright (c) 2021-2023 Nordix Foundation.                                 #
+#   Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.           #
@@ -26,7 +27,7 @@ spec:
       hostname: {{ include "common.name" . }}
       containers:
         - name: {{ include "common.containername" . }}
-          image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+          image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
           imagePullPolicy: {{ .Values.imagePullPolicy }}
           ports: {{- include "common.containerPorts" . | nindent 10 }}
           {{- include "common.tcpsocketProbes" . | nindent 10 }}
index 63c096f..b63a32f 100644 (file)
@@ -1,5 +1,6 @@
 ################################################################################
-#   Copyright (c) 2021 Nordix Foundation.                                      #
+#   Copyright (c) 2021-2023 Nordix Foundation.                                 #
+#   Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.           #
@@ -20,8 +21,7 @@
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
-  name: nonrtric-gateway
+  name: 'o-ran-sc/nonrtric-gateway'
   tag: 1.2.0
 service:
   type: NodePort
index 5986f83..f2bd531 100644 (file)
@@ -1,5 +1,6 @@
 ################################################################################
-#   Copyright (c) 2020 Nordix Foundation.                                      #
+#   Copyright (c) 2020-2023 Nordix Foundation.                                 #
+#   Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.           #
@@ -27,7 +28,7 @@ spec:
       hostname: {{ include "common.name" . }}
       initContainers:
       - name: copy
-        image: busybox:1.28
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.initContainer.image.name }}:{{ .Values.initContainer.image.tag }}
         command:
         - /bin/sh
         - -c
@@ -43,7 +44,7 @@ spec:
           mountPath: /etc/app/policy-management-service/initialdata
       containers:
       - name: {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports: {{- include "common.containerPorts" . | nindent 8 }}
         {{- include "common.tcpsocketReadinessProbe" . | nindent 8 }}
index 63260cf..f815c0a 100644 (file)
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
-  name: nonrtric-plt-a1policymanagementservice
+  name: 'o-ran-sc/nonrtric-plt-a1policymanagementservice'
   tag: 2.10.0
+initContainer:
+  image:
+    name: busybox
+    tag: 1.28
 service:
   type: NodePort
   ports:
index 04ea5ea..82582cc 100644 (file)
@@ -28,11 +28,11 @@ spec:
       hostname: {{ include "common.name" . }}
       initContainers:
       - name: wait-for-servicemanager
-        image: alpine:latest
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.initContainer.image.name }}:{{ .Values.initContainer.image.tag }}
         command: ['sh', '-c', 'apk add --no-cache netcat-openbsd && nc -zv servicemanager 8095']
       containers:
       - name: {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports: {{- include "common.containerPorts" . | nindent 8 }}
         {{- include "common.tcpsocketProbes" . | nindent 8 }}
index cb1ba40..37bd714 100644 (file)
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: "nexus3.o-ran-sc.org:10002/o-ran-sc"
-  name: nonrtric-plt-rappmanager
+  name: 'o-ran-sc/nonrtric-plt-rappmanager'
   tag: 0.3.0
+initContainer:
+  image:
+    name: alpine
+    tag: 3.22.1
 service:
   type: ClusterIP
   ports:
index fd76886..e87ac93 100644 (file)
@@ -1,5 +1,5 @@
 ################################################################################
-#   Copyright (c) 2024 OpenInfra Foundation Europe.                            #
+#   Copyright (c) 2024-2025 OpenInfra Foundation Europe.                       #
 #                                                                              #
 #   Licensed under the Apache License, Version 2.0 (the "License");            #
 #   you may not use this file except in compliance with the License.           #
@@ -26,7 +26,7 @@ spec:
       hostname: {{ include "common.name" . }}
       containers:
       - name:  {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         {{- include "common.tcpsocketProbes" . | nindent 8 }}
         volumeMounts:
index e712d31..3ce2f30 100644 (file)
@@ -18,8 +18,7 @@
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: 'nexus3.o-ran-sc.org:10002/o-ran-sc'
-  name: nonrtric-plt-servicemanager
+  name: 'o-ran-sc/nonrtric-plt-servicemanager'
   tag: 0.2.2
 service:
   httpName: http
index 46ca44b..a9eb238 100644 (file)
@@ -34,7 +34,8 @@ spec:
         app: influxdb2
     spec:
       containers:
-      - image: influxdb:2.7.12
+      - image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         name: influxdb2
         ports:
         - containerPort: 8086
diff --git a/smo-install/oran_oom/smo/common/influxdb2/values.yaml b/smo-install/oran_oom/smo/common/influxdb2/values.yaml
new file mode 100644 (file)
index 0000000..aa7af98
--- /dev/null
@@ -0,0 +1,20 @@
+################################################################################
+#   Copyright (C) 2025 OpenInfra Foundation Europe. 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.                                             #
+################################################################################
+
+imagePullPolicy: IfNotPresent
+image:
+  name: influxdb
+  tag: 2.7.12
index ee4c3e8..d3b7769 100644 (file)
@@ -28,6 +28,6 @@ spec:
   restartPolicy: Always
   containers:
   - name: kafka-client
-    image: confluentinc/cp-kafka:7.2.2
+    image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
     command: ['sh', '-c', 'while [ true ];do sleep 60;done']
-    imagePullPolicy: IfNotPresent
+    imagePullPolicy: {{ .Values.imagePullPolicy }}
diff --git a/smo-install/oran_oom/smo/common/kafka-client/values.yaml b/smo-install/oran_oom/smo/common/kafka-client/values.yaml
new file mode 100644 (file)
index 0000000..58b79da
--- /dev/null
@@ -0,0 +1,20 @@
+################################################################################
+#   Copyright (C) 2025 OpenInfra Foundation Europe. 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.                                             #
+################################################################################
+
+imagePullPolicy: IfNotPresent
+image:
+  name: confluentinc/cp-kafka
+  tag: 7.2.2
index a201a89..81a3209 100644 (file)
@@ -39,7 +39,8 @@ spec:
       restartPolicy: Always
       containers:
       - name: keycloak-proxy
-        image: nginx:alpine
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports:
         - containerPort: 8080
         volumeMounts:
diff --git a/smo-install/oran_oom/smo/common/keycloak-proxy/values.yaml b/smo-install/oran_oom/smo/common/keycloak-proxy/values.yaml
new file mode 100644 (file)
index 0000000..d7613e6
--- /dev/null
@@ -0,0 +1,20 @@
+################################################################################
+#   Copyright (C) 2025 OpenInfra Foundation Europe. 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.                                             #
+################################################################################
+
+imagePullPolicy: IfNotPresent
+image:
+  name: nginx
+  tag: alpine
index c942086..67ff9ed 100644 (file)
@@ -37,7 +37,8 @@ spec:
     spec:
       containers:
       - name: keycloak
-        image: quay.io/keycloak/keycloak:26.3
+        image: {{ .Values.image.name }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         args: ["start-dev"]
         env:
         - name: KEYCLOAK_ADMIN
diff --git a/smo-install/oran_oom/smo/common/keycloak/values.yaml b/smo-install/oran_oom/smo/common/keycloak/values.yaml
new file mode 100644 (file)
index 0000000..0c4672c
--- /dev/null
@@ -0,0 +1,20 @@
+################################################################################
+#   Copyright (C) 2025 OpenInfra Foundation Europe. 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.                                             #
+################################################################################
+
+imagePullPolicy: IfNotPresent
+image:
+  name: quay.io/keycloak/keycloak
+  tag: 26.3
index a06f267..c8b6a81 100644 (file)
@@ -35,8 +35,8 @@ spec:
     spec:
       initContainers:
       - name: init
-        image: alpine:latest
-        imagePullPolicy: IfNotPresent
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.alpine.name }}:{{ .Values.image.alpine.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         command: ["ash","-c"]
         args: ["IDX=${HOSTNAME##*-} && mkdir -p /data/ && rm -rf /data//*"]
         volumeMounts:
@@ -44,8 +44,8 @@ spec:
           name: data-vol
       containers:
       - name: minio
-        image: minio/minio:RELEASE.2025-06-13T11-33-47Z
-        imagePullPolicy: IfNotPresent
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.minio.name }}:{{ .Values.image.minio.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports:
         - name: tcpmain
           containerPort: 9000
index f91fa97..4a3b96f 100644 (file)
@@ -25,7 +25,7 @@ metadata:
 spec:
   containers:
   - name: mc-client
-    image: minio/mc
+    image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.minioclient.name }}:{{ .Values.image.minioclient.tag }}
     command: ['sh', '-c', 'while [ true ];do sleep 60;done']
-    imagePullPolicy: Always
+    imagePullPolicy: {{ .Values.imagePullPolicy }}
   restartPolicy: Always
index 05a55a4..514efc7 100644 (file)
 #  ============LICENSE_END=================================================
 #
 
+imagePullPolicy: IfNotPresent
+image:
+  alpine:
+    name: alpine
+    tag: 3.22.1
+  minio:
+    name: minio/minio
+    tag: RELEASE.2025-06-13T11-33-47Z
+  minioclient:
+    name: minio/mc
+    tag: RELEASE.2025-08-13T08-35-41Z
+
 minio:
   opa:
     decisionlogs: true
\ No newline at end of file
index 6a9f71b..171ec0e 100644 (file)
@@ -33,7 +33,7 @@ spec:
     spec:
       containers:
       - name: bundle-server
-        image: nginx:1.21
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         ports:
         - containerPort: 80
         volumeMounts:
diff --git a/smo-install/oran_oom/smo/common/opa-rule-db/values.yaml b/smo-install/oran_oom/smo/common/opa-rule-db/values.yaml
new file mode 100644 (file)
index 0000000..2a26d35
--- /dev/null
@@ -0,0 +1,21 @@
+#  ============LICENSE_START===============================================
+#  Copyright (C) 2025 OpenInfra Foundation Europe. 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=================================================
+#
+
+imagePullPolicy: IfNotPresent
+image:
+  name: nginx
+  tag: 1.21
\ No newline at end of file
index 2356ec3..66702f4 100644 (file)
@@ -33,8 +33,8 @@ spec:
     spec:
       containers:
       - name: opa
-        image: openpolicyagent/opa:0.70.0-envoy-17
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports:
         - name: http
           containerPort: 8181
index 4c9cb47..17a6526 100644 (file)
 #  ============LICENSE_END=================================================
 #
 
+imagePullPolicy: IfNotPresent
+image:
+  name: openpolicyagent/opa
+  tag: 0.70.0-envoy-17
+
 opa:
   decisionlogs: true
\ No newline at end of file
index e8e2b1c..45cacce 100644 (file)
@@ -32,12 +32,12 @@ spec:
     spec:
       initContainers:
       - name: kafka-readiness-check
-        image: alpine:latest
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.alpine.name }}:{{ .Values.image.alpine.tag }}
         command: ['sh', '-c', 'apk add --no-cache netcat-openbsd && nc -zv onap-strimzi-kafka-bootstrap.onap 9092']
       containers:
       - name: redpanda-console
-        image: redpandadata/console:v3.1.2
-        imagePullPolicy: IfNotPresent
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.redpanda.name }}:{{ .Values.image.redpanda.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         env:
         - name: KAFKA_BROKERS
           value: "onap-strimzi-kafka-bootstrap.onap:9092"
index f1cfb0e..cc1bd73 100644 (file)
@@ -19,6 +19,15 @@ global:
   #Strimzi Kafka properties
   useStrimziKafka: true
 
+imagePullPolicy: IfNotPresent
+image:
+  alpine:
+    name: alpine
+    tag: 3.22.1
+  redpanda:
+    name: redpandadata/console
+    tag: v3.1.2
+
 # Strimzi Kafka config
 kafkaUser:
   authenticationType: scram-sha-512
index 2b343ad..2220060 100644 (file)
@@ -28,7 +28,7 @@ spec:
       serviceAccountName: cps-kafkauser-patch-sa
       containers:
       - name: cps-kafkauser-patch-container
-        image: bitnami/kubectl:1.32.2
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["bash","/scripts/patch-cps-kafka-users.sh"]
         securityContext:
           allowPrivilegeEscalation: false
index 40f9e74..02340c0 100644 (file)
@@ -28,7 +28,7 @@ spec:
       serviceAccountName: policy-kafkauser-patch-sa
       containers:
       - name: policy-kafkauser-patch-container
-        image: bitnami/kubectl:1.32.2
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["bash","/scripts/patch-policy-kafka-users.sh"]
         securityContext:
           allowPrivilegeEscalation: false
index be16325..12a5cb8 100644 (file)
@@ -28,7 +28,7 @@ spec:
       serviceAccountName: strimzi-patch-sa
       containers:
       - name: strimzi-patch-container
-        image: bitnami/kubectl:1.32.2
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["bash","/scripts/patch-strimzi-kafka.sh"]
         securityContext:
           allowPrivilegeEscalation: false
index 0a8426f..6dadab1 100644 (file)
@@ -28,7 +28,7 @@ spec:
       serviceAccountName: vescollector-patch-sa
       containers:
       - name: vescollector-patch-container
-        image: bitnami/kubectl:1.32.2
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["bash","/scripts/patch-ves-collector.sh"]
         securityContext:
           allowPrivilegeEscalation: false
index fb40bd7..b7218f2 100644 (file)
 #  limitations under the License.
 #  ============LICENSE_END=================================================
 
+global:
+  image:
+    bash:
+      name: bash
+      tag: alpine3.22
+    kubectl:
+      name: bitnami/kubectl
+      tag: 1.32.2
+
 influxdb2:
   enabled: true
 kafka-client:
index cfff8f4..79b29d2 100644 (file)
@@ -50,7 +50,7 @@ spec:
       - name: wait-for-keycloak-and-kafka
         securityContext:
           runAsUser: 0
-        image: bitnami/kubectl
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["/usr/bin/bash"]
         args: ["-c", "cp /opt/app/scripts/init-wait.sh /opt/ && chmod +x /opt/init-wait.sh && /opt/init-wait.sh"]
         volumeMounts:
@@ -61,9 +61,8 @@ spec:
       - name: dfc
         securityContext:
           runAsUser: 0     # Need to run as root - needed when writing to hostpath
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-ranpm-datafilecollector:1.2.0
-        # image: aravindtga/dfc:1.2.0-SNAPSHOT
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.dfc.name }}:{{ .Values.image.dfc.tag }}
+        imagePullPolicy: {{  .Values.imagePullPolicy }}
         ports:
         - name: http
           containerPort: 8100
@@ -92,8 +91,8 @@ spec:
         - name: APP_KAFKA_CLIENT-ID
           value: "datafile-collector.$(APPNS).$(APPID)"
       - name: auth-token
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-auth-token-fetch:1.1.1
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.authtoken.name }}:{{ .Values.image.authtoken.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         env:
         - name: CREDS_GRANT_TYPE
           value: client_credentials
index 1a0c649..905f7b9 100644 (file)
@@ -19,6 +19,15 @@ global:
   #Strimzi Kafka properties
   useStrimziKafka: true
 
+imagePullPolicy: IfNotPresent
+image:
+  dfc:
+    name: 'o-ran-sc/nonrtric-plt-ranpm-datafilecollector'
+    tag: 1.2.0
+  authtoken:
+    name: 'o-ran-sc/nonrtric-plt-auth-token-fetch'
+    tag: 1.1.1
+
 # Strimzi Kafka config
 kafkaUser:
   name: service-account-dfc
index c66dc9e..7deb6cd 100644 (file)
@@ -41,7 +41,7 @@ spec:
       - name: wait-for-keycloak-and-kafka
         securityContext:
           runAsUser: 0
-        image: bitnami/kubectl
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["/usr/bin/bash"]
         args: ["-c", "cp /opt/app/scripts/init-wait.sh /opt/ && chmod +x /opt/init-wait.sh && /opt/init-wait.sh"]
         volumeMounts:
@@ -50,8 +50,8 @@ spec:
           subPath: init-wait.sh
       containers:
       - name: kafka-producer-pm-json2influx
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-ranpm-pm-file-converter:1.2.0
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports:
         - name: http
           containerPort: 80
index 798e880..67352a0 100644 (file)
@@ -19,6 +19,11 @@ global:
   #Strimzi Kafka properties
   useStrimziKafka: true
 
+imagePullPolicy: IfNotPresent
+image:
+  name: 'o-ran-sc/nonrtric-plt-ranpm-pm-file-converter'
+  tag: 1.2.0
+
 # Strimzi Kafka config
 kafkaUser:
   # For SCRAM-SHA-512 the name need not to be filled
index 18dd58d..5ded904 100644 (file)
@@ -41,7 +41,7 @@ spec:
       - name: wait-for-keycloak-and-kafka
         securityContext:
           runAsUser: 0
-        image: bitnami/kubectl
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["/usr/bin/bash"]
         args: ["-c", "cp /opt/app/scripts/init-wait.sh /opt/ && chmod +x /opt/init-wait.sh && /opt/init-wait.sh"]
         volumeMounts:
@@ -50,8 +50,8 @@ spec:
           subPath: init-wait.sh
       containers:
       - name: kafka-producer-pm-json2kafka
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-ranpm-pm-file-converter:1.2.0
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports:
         - name: http
           containerPort: 80
index 78a0926..b133487 100644 (file)
@@ -19,6 +19,11 @@ global:
   #Strimzi Kafka properties
   useStrimziKafka: true
 
+imagePullPolicy: IfNotPresent
+image:
+  name: 'o-ran-sc/nonrtric-plt-ranpm-pm-file-converter'
+  tag: 1.2.0
+
 # Strimzi Kafka config
 kafkaUser:
   # For SCRAM-SHA-512 the name need not to be filled
index c8c19f7..cf77a11 100644 (file)
@@ -41,7 +41,7 @@ spec:
       - name: wait-for-keycloak-and-kafka
         securityContext:
           runAsUser: 0
-        image: bitnami/kubectl
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["/usr/bin/bash"]
         args: ["-c", "cp /opt/app/scripts/init-wait.sh /opt/ && chmod +x /opt/init-wait.sh && /opt/init-wait.sh"]
         volumeMounts:
@@ -50,8 +50,8 @@ spec:
           subPath: init-wait.sh
       containers:
       - name: kafka-producer-pm-xml2json
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-ranpm-pm-file-converter:1.2.0
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy  }}
         ports:
         - name: http
           containerPort: 80
index 5ed0866..dd1105c 100644 (file)
@@ -19,6 +19,11 @@ global:
   #Strimzi Kafka properties
   useStrimziKafka: true
 
+imagePullPolicy: IfNotPresent
+image:
+  name: 'o-ran-sc/nonrtric-plt-ranpm-pm-file-converter'
+  tag: 1.2.0
+
 # Strimzi Kafka config
 kafkaUser:
   # For SCRAM-SHA-512 the name need not to be filled
index e9be833..527878f 100644 (file)
@@ -39,7 +39,7 @@ spec:
       - name: wait-for-keycloak-and-kafka
         securityContext:
           runAsUser: 0
-        image: bitnami/kubectl
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["/usr/bin/bash"]
         args: ["-c", "cp /opt/app/scripts/init-wait.sh /opt/ && chmod +x /opt/init-wait.sh && /opt/init-wait.sh"]
         volumeMounts:
@@ -57,8 +57,8 @@ spec:
           emptyDir: {}
       containers:
       - name: auth-token
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-auth-token-fetch:1.1.1
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.authtoken.name }}:{{ .Values.image.authtoken.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         env:
         - name: CREDS_GRANT_TYPE
           value: client_credentials
@@ -77,8 +77,8 @@ spec:
         - mountPath: /token-cache
           name: token-cache-volume
       - name: pmlog
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-pmlog:1.1.0
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.pmlog.name }}:{{ .Values.image.pmlog.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         command:
         - sh
         - -c
index 0eae5f8..83b711d 100644 (file)
@@ -19,6 +19,15 @@ global:
   #Strimzi Kafka properties
   useStrimziKafka: true
 
+imagePullPolicy: IfNotPresent
+image:
+  pmlog:
+    name: 'o-ran-sc/nonrtric-plt-pmlog'
+    tag: 1.1.0
+  authtoken:
+    name: 'o-ran-sc/nonrtric-plt-auth-token-fetch'
+    tag: 1.1.1
+
 # Strimzi Kafka config
 kafkaUser:
   # For SCRAM-SHA-512 the name need not to be filled
index 281738d..ec30393 100644 (file)
@@ -39,7 +39,7 @@ spec:
       - name: wait-for-keycloak-and-kafka
         securityContext:
           runAsUser: 0
-        image: bitnami/kubectl
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["/usr/bin/bash"]
         args: ["-c", "cp /opt/app/scripts/init-wait.sh /opt/ && chmod +x /opt/init-wait.sh && /opt/init-wait.sh"]
         volumeMounts:
@@ -48,8 +48,8 @@ spec:
           subPath: init-wait.sh
       containers:
       - name: pm-producer-json2kafka
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-pmproducer:1.1.0
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.pmproducer.name }}:{{ .Values.image.pmproducer.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports:
         - name: http
           containerPort: 8084
@@ -75,8 +75,8 @@ spec:
         - mountPath: /token-cache
           name: token-cache-volume
       - name: auth-token
-        image: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-plt-auth-token-fetch:1.1.1
-        imagePullPolicy: Always
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.authtoken.name }}:{{ .Values.image.authtoken.tag }}
+        imagePullPolicy: {{ .Values.imagePullPolicy }}
         env:
         - name: CREDS_GRANT_TYPE
           value: client_credentials
index c4d2a95..dcb8411 100644 (file)
@@ -19,6 +19,15 @@ global:
   #Strimzi Kafka properties
   useStrimziKafka: true
 
+imagePullPolicy: IfNotPresent
+image:
+  pmproducer:
+    name: 'o-ran-sc/nonrtric-plt-pmproducer'
+    tag: 1.1.0
+  authtoken:
+    name: 'o-ran-sc/nonrtric-plt-auth-token-fetch'
+    tag: 1.1.1
+
 # Strimzi Kafka config
 kafkaUser:
   # For SCRAM-SHA-512 the name need not to be filled
index 6a5a186..cee9022 100644 (file)
@@ -24,7 +24,7 @@ spec:
       serviceAccountName: ranpm-component-sa
       initContainers:
       - name: wait-for-keycloak-job
-        image: bitnami/kubectl
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         args:
           - wait
           - job.batch/keycloak-init
@@ -34,7 +34,7 @@ spec:
           - 300s
       containers:
       - name: ics-init-container
-        image: bash:latest
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.bash.name }}:{{ .Values.global.image.bash.tag }}
         command: ["bash","/scripts/configure_ics.sh"]
         env:
           - name: ICS_HOST
index 9c2d209..6a253d5 100644 (file)
@@ -23,7 +23,7 @@ spec:
     spec:
       containers:
       - name: influxdb2-init-container
-        image: bash:latest
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.bash.name }}:{{ .Values.global.image.bash.tag }}
         command: ["bash","/scripts/configure_influx.sh"]
         env:
           - name: INFLUXDB2_HOST
index dd8d339..cf4e3d8 100644 (file)
@@ -27,7 +27,7 @@ spec:
       serviceAccountName: keycloak-init-sa
       containers:
       - name: keycloak-init-container
-        image: bitnami/kubectl:1.32.2
+        image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.global.image.kubectl.name }}:{{ .Values.global.image.kubectl.tag }}
         command: ["bash","/scripts/configure_keycloak.sh"]
         securityContext:
           allowPrivilegeEscalation: false
index 45bf242..c046f03 100644 (file)
 global:
   #Strimzi Kafka properties
   useStrimziKafka: true
+  image:
+    bash:
+      name: bash
+      tag: alpine3.22
+    kubectl:
+      name: bitnami/kubectl
+      tag: 1.32.2
+
 
 keycloak:
   host: "keycloak-proxy"
diff --git a/smo-install/oran_oom/smo/smo-common/templates/_repositories.tpl b/smo-install/oran_oom/smo/smo-common/templates/_repositories.tpl
new file mode 100644 (file)
index 0000000..ba11612
--- /dev/null
@@ -0,0 +1,43 @@
+{{/*
+################################################################################
+#   Copyright (c) 2025 OpenInfra Foundation Europe.                            #
+#                                                                              #
+#   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 "repository.nexusRepo" -}}
+  {{- $repoKey := .repoKey | required "repoKey is required" -}}
+  {{- $default := .default | default "" -}}
+  {{- $dot := .dot | default . -}}
+  {{- $values := $dot.Values | default (dict) -}}
+  {{- $localValue := get $values $repoKey | default "" -}}
+  {{- $globalValue := get ($values.global | default (dict)) $repoKey | default "" -}}
+  {{- coalesce $localValue $globalValue $default -}}
+{{- end -}}
+
+{{- define "repository.nexusProxyRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusProxyRepo" "default" "nexus3.o-ran-sc.org:10001") -}}
+{{- end -}}
+
+{{- define "repository.nexusReleaseRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusReleaseRepo" "default" "nexus3.o-ran-sc.org:10002") -}}
+{{- end -}}
+
+{{- define "repository.nexusSnapshotRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusSnapshotRepo" "default" "nexus3.o-ran-sc.org:10003") -}}
+{{- end -}}
+
+{{- define "repository.nexusStagingRepo" -}}
+  {{- include "repository.nexusRepo" (dict "dot" . "repoKey" "nexusStagingRepo" "default" "nexus3.o-ran-sc.org:10004") -}}
+{{- end -}}
diff --git a/smo-install/oran_oom/smo/smo-common/values.yaml b/smo-install/oran_oom/smo/smo-common/values.yaml
new file mode 100644 (file)
index 0000000..808262a
--- /dev/null
@@ -0,0 +1,29 @@
+################################################################################
+#   Copyright (c) 2020-2023 Nordix Foundation.                                 #
+#   Copyright (c) 2023-2025 OpenInfra Foundation Europe. 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.                                             #
+################################################################################
+
+global:
+  nexusProxyRepo: "nexus3.o-ran-sc.org:10001"
+  nexusReleaseRepo: "nexus3.o-ran-sc.org:10002"
+  nexusSnapshotRepo: "nexus3.o-ran-sc.org:10003"
+  nexusStagingRepo: "nexus3.o-ran-sc.org:10004"
+  image:
+    bash:
+      name: bash
+      tag: alpine3.22
+    kubectl:
+      name: bitnami/kubectl
+      tag: 1.32.2
\ No newline at end of file
index 8684e67..02b0a76 100644 (file)
@@ -1,5 +1,5 @@
 #  ============LICENSE_START===============================================
-#  Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved.
+#  Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.
@@ -27,7 +27,7 @@ spec:
       hostname: {{ include "common.name" . }}
       containers:
       - name: {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
 {{- if .Values.global.useStrimziKafka }}
         env:
index a456cc6..24d73d4 100644 (file)
@@ -1,5 +1,5 @@
 #  ============LICENSE_START===============================================
-#  Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved.
+#  Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.
@@ -19,7 +19,6 @@
 
 imagePullPolicy: IfNotPresent
 image:
-  registry: "" # Will be set from parent values.yaml
   name: "" # Will be set from parent values.yaml
   tag: "" # Will be set from parent values.yaml
 service:
index 3f38469..1a40f6f 100644 (file)
@@ -1,5 +1,5 @@
 #  ============LICENSE_START===============================================
-#  Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved.
+#  Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.
@@ -27,11 +27,12 @@ spec:
       hostname: {{ include "common.name" . }}
       initContainers:
         - name: postgres-readiness-check
-          image: alpine:latest
+          image: {{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.alpine.name }}:{{ .Values.image.alpine.tag }}
+          imagePullPolicy: {{ .Values.imagePullPolicy }}
           command: ['sh', '-c', 'apk add --no-cache netcat-openbsd && nc -zv oran-smo-postgresql 5432']
       containers:
       - name: {{ include "common.containername" . }}
-        image: {{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}
+        image: {{ include "repository.nexusReleaseRepo" . }}/{{ .Values.image.teiv.name }}:{{ .Values.image.teiv.tag }}
         imagePullPolicy: {{ .Values.imagePullPolicy }}
         ports: {{- include "common.containerPorts" . | nindent 12 }}
 {{- if .Values.global.useStrimziKafka }}
index 3c3627f..7552a8a 100644 (file)
@@ -1,5 +1,5 @@
 #  ============LICENSE_START===============================================
-#  Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved.
+#  Copyright (C) 2024-2025 OpenInfra Foundation Europe. 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.
 #
 imagePullPolicy: IfNotPresent
 image:
-  registry: "nexus3.o-ran-sc.org:10004/o-ran-sc"
-  name: smo-teiv-exposure
-  tag: 0.0.1
+  teiv:
+    name: 'o-ran-sc/smo-teiv-exposure'
+    tag: 0.0.1
+  alpine:
+    name: alpine
+    tag: 3.22.1
 service:
   type: ClusterIP
   ports:
index f45e6e2..17be40a 100644 (file)
@@ -17,6 +17,8 @@
 
 global:
   nodePortPrefixExt: 305
+  # This is used by the postgres container
+  imageRegistry: "nexus3.o-ran-sc.org:10001"
   #Strimzi Kafka properties
   useStrimziKafka: true
   kafkaTopics:
@@ -39,6 +41,8 @@ postgresql:
     database: topology_exposure_db
   volumePermissions:
     enabled: true
+    image:
+      repository: bitnamilegacy/os-shell
   primary:
     initdb:
       scriptsConfigMap: *sqlconfigmapname
@@ -52,9 +56,9 @@ topology-exposure:
   name: topology-exposure
   imagePullPolicy: IfNotPresent
   image:
-    registry: "nexus3.o-ran-sc.org:10002"
-    name: o-ran-sc/smo-teiv-exposure
-    tag: 0.2.0
+    teiv:
+      name: o-ran-sc/smo-teiv-exposure
+      tag: 0.2.0
   service:
     type: ClusterIP
     ports:
@@ -91,9 +95,9 @@ topology-ingestion:
   name: topology-ingestion
   imagePullPolicy: IfNotPresent
   image:
-    registry: "nexus3.o-ran-sc.org:10002"
-    name: o-ran-sc/smo-teiv-ingestion
-    tag: 0.2.0
+    teiv:
+      name: o-ran-sc/smo-teiv-ingestion
+      tag: 0.2.0
   service:
     type: ClusterIP
     ports:
@@ -133,7 +137,6 @@ ncmp-to-teiv-adapter:
   name: ncmp-to-teiv-adapter
   imagePullPolicy: IfNotPresent
   image:
-    registry: "nexus3.o-ran-sc.org:10002"
     name: o-ran-sc/smo-ncmp-to-teiv-adapter
     tag: 0.0.1
   service:
index aa14195..d490fd9 100644 (file)
@@ -23,7 +23,7 @@ spec:
     spec:
       containers:
         - name: {{ include "common.containername" . }}
-          image: "{{ .Values.image.repository }}/{{ .Values.image.name}}:{{ .Values.image.tag }}"
+          image: "{{ include "repository.nexusProxyRepo" . }}/{{ .Values.image.name}}:{{ .Values.image.tag }}"
           imagePullPolicy: {{ .Values.image.pullPolicy }}
           tty: true
           stdin: true
index d7a6a4f..b75d42a 100644 (file)
@@ -15,8 +15,7 @@
 # Static Defaults
 replicaCount: 1
 image:
-  repository: 'docker.io/hightec'
-  name: smo-topology-api-v2
+  name: 'hightec/smo-topology-api-v2'
   tag: 2.0.2-SNAPSHOT-20210315T160448Z
   pullPolicy: IfNotPresent
 
index 0da495d..641fcf5 100755 (executable)
@@ -22,11 +22,12 @@ if ! command -v jq > /dev/null 2>&1; then
 fi
 
 OVERRIDEYAML=$1
+NEXUS_PROXY_DOCKER_IO_REPO="nexus3.o-ran-sc.org:10001"
 
 # OpenEBS installation
 helm repo add openebs https://openebs.github.io/openebs
 helm repo update
-helm upgrade --install openebs --namespace openebs openebs/openebs --version 4.3.0 --create-namespace --set engines.replicated.mayastor.enabled=false --set engines.local.lvm.enabled=false --set engines.local.zfs.enabled=false --set loki.enabled=false --set alloy.enabled=false --wait
+helm upgrade --install openebs --namespace openebs openebs/openebs --version 4.3.0 --create-namespace --set engines.replicated.mayastor.enabled=false --set engines.local.lvm.enabled=false --set engines.local.zfs.enabled=false --set loki.enabled=false --set alloy.enabled=false --set global.imageRegistry=$NEXUS_PROXY_DOCKER_IO_REPO --wait
 
 # Create storage class for smo
 kubectl apply -f ../packages/pre-configuration/smo-sc.yaml