[UUI] Use new uui-server image 87/140387/4
authorFiete Ostkamp <Fiete.Ostkamp@telekom.de>
Thu, 6 Mar 2025 10:01:12 +0000 (11:01 +0100)
committerFiete Ostkamp <Fiete.Ostkamp@telekom.de>
Mon, 10 Mar 2025 15:40:27 +0000 (16:40 +0100)
- use 15.0.3 uui-server image
- introduce startup probe to have pod available as early as possible
- use spring-boot's actuator endpoint for the probes
- adjust common/nginx to not use tls and have a revisionHistoryLimit of 1

Issue-ID: USECASEUI-885
Change-Id: I763d3c2f0f9cd1b9748f18b347adb891c8e8b040
Signed-off-by: Fiete Ostkamp <Fiete.Ostkamp@telekom.de>
kubernetes/common/nginx/values.yaml
kubernetes/uui/components/uui-server/resources/config/application.properties
kubernetes/uui/components/uui-server/templates/deployment.yaml
kubernetes/uui/components/uui-server/values.yaml

index bb26ece..49e4e4c 100644 (file)
@@ -136,7 +136,7 @@ extraEnvVarsSecret: ""
 replicaCount: 1
 ## @param revisionHistoryLimit The number of old history to retain to allow rollback
 ##
-revisionHistoryLimit: 10
+revisionHistoryLimit: 1
 ## @param updateStrategy.type NGINX deployment strategy type
 ## @param updateStrategy.rollingUpdate NGINX deployment rolling update configuration parameters
 ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
@@ -241,7 +241,7 @@ topologySpreadConstraints: []
 tls:
   ## @param tls.enabled Enable TLS transport
   ##
-  enabled: true
+  enabled: false
   ## @param tls.autoGenerated Auto-generate self-signed certificates
   ##
   autoGenerated: true
index 3b966f9..a86cea7 100644 (file)
@@ -15,7 +15,7 @@
 ##
 ## General App Properties
 spring.application.name=uui-server
-server.servlet.contextPath=/api/usecaseui-server/v1
+server.servlet.contextPath={{ .Values.uuiServer.basePath }}
 server.port=8082
 spring.http.multipart.max-file-size=128MB
 spring.http.multipart.max-request-size=128MB
@@ -56,6 +56,7 @@ management.tracing.sampling.probability={{ default .Values.global.tracing.sampli
 management.zipkin.tracing.endpoint={{ default .Values.global.tracing.collector.baseUrl .Values.tracing.collector.baseUrl }}/api/v2/spans
 
 uui-server.client.aai.baseUrl={{ .Values.uuiServer.client.aai.baseUrl }}
+uui-server.client.aai.apiVersion={{ .Values.uuiServer.client.aai.apiVersion }}
 uui-server.client.aai.username={{ .Values.uuiServer.client.aai.username }}
 uui-server.client.aai.password={{ .Values.uuiServer.client.aai.password }}
 uui-server.client.so.baseUrl={{ .Values.uuiServer.client.so.baseUrl }}
index 6956970..0d48648 100644 (file)
@@ -83,19 +83,28 @@ spec:
           ports: {{ include "common.containerPorts" . | nindent 10  }}
           # disable liveness probe when breakpoints set in debugger
           # so K8s doesn't restart unresponsive container
+          {{- if eq .Values.startup.enabled true }}
+          startupProbe:
+            httpGet:
+              port: {{ index .Values.service.ports 0 "port" }}
+              path: {{ .Values.uuiServer.basePath }}{{ .Values.startup.path }}
+            failureThreshold: {{ .Values.startup.failureThreshold }}
+            periodSeconds: {{ .Values.startup.periodSeconds }}
+          {{- end }}
           {{- if eq .Values.liveness.enabled true }}
           livenessProbe:
-            tcpSocket:
+            httpGet:
               port: {{ index .Values.service.ports 0 "port" }}
-            initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
+              path: {{ .Values.uuiServer.basePath }}{{ .Values.liveness.path }}
             periodSeconds: {{ .Values.liveness.periodSeconds }}
+            failureThreshold: {{ .Values.liveness.failureThreshold }}
           {{- end }}
-          resources: {{ include "common.resources" . | nindent 12 }}
           readinessProbe:
-            tcpSocket:
+            httpGet:
               port: {{ index .Values.service.ports 0 "port" }}
-            initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
+              path: {{ .Values.uuiServer.basePath }}{{ .Values.readiness.path }}
             periodSeconds: {{ .Values.readiness.periodSeconds }}
+          resources: {{ include "common.resources" . | nindent 12 }}
           env:
           - name: MSB_ADDR
             value: {{tpl .Values.msbaddr .}}
index 3a9aee8..182dcfe 100644 (file)
@@ -52,7 +52,7 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/usecase-ui-server:15.0.2
+image: onap/usecase-ui-server:15.0.3
 pullPolicy: Always
 revisionHistoryLimit: 1
 
@@ -95,15 +95,20 @@ nodeSelector: {}
 affinity: {}
 
 # probe configuration parameters
+startup:
+  enabled: true
+  path: /actuator/health
+  periodSeconds: 1
+  failureThreshold: 60
+
 liveness:
-  initialDelaySeconds: 120
-  periodSeconds: 10
-  # necessary to disable liveness probe when setting breakpoints
-  # in debugger so K8s doesn't restart unresponsive container
+  # disable this for remote debugging
   enabled: true
+  path: /actuator/health
+  periodSeconds: 10
 
 readiness:
-  initialDelaySeconds: 60
+  path: /actuator/health/readiness
   periodSeconds: 10
 
 service:
@@ -186,11 +191,13 @@ wait_for_job_container:
 #   "helm.sh/hook-weight": "1"
 
 uuiServer:
+  basePath: /api/usecaseui-server/v1
   client:
     aai:
       baseUrl: http://aai.onap
       username: AAI
       password: AAI
+      apiVersion: v29
     so:
       baseUrl: http://so.onap:8080
       username: InfraPortalClient