[UUI] Update image version 16.0.1 of components of UUI
[oom.git] / kubernetes / common / common / templates / _pod.tpl
index de25485..6feb91b 100644 (file)
 {{- $global := . }}
 {{-   range $index, $port := $ports }}
 {{-     if (include "common.needTLS" $global) }}
-- containerPort: {{ $port.port }}
+- containerPort: {{ default $port.port $port.internal_port }}
 {{-     else }}
-- containerPort: {{ default $port.port $port.plain_port }}
+- containerPort: {{ default (default $port.port $port.internal_port) (default $port.plain_port $port.internal_plain_port) }}
 {{-     end }}
   name: {{ $port.name }}
 {{-     if (and $port.plain_port (and (include "common.needTLS" $global) $both_tls_and_plain))  }}
-- containerPort: {{ $port.plain_port }}
+- containerPort: {{ default $port.plain_port $port.internal_plain_port }}
   name: {{ $port.name }}-plain
 {{-     end }}
+{{-     if $port.l4_protocol }}
+  protocol: {{ $port.l4_protocol }}
+{{-     end }}
 {{-   end }}
 {{- end -}}
 
 {{/*
    Generate securityContext for pod
+   required variables: user_id, group_id
+   optional variables: fsgroup_id, runAsNonRoot, seccompProfileType
+   Example in values.yaml
+   securityContext:
+     user_id: 70
+     group_id: 70
+     # fsgroup_id: 70
+     # runAsNonRoot: true
+     # seccompProfileType: "RuntimeDefault"
 */}}
 {{- define "common.podSecurityContext" -}}
 securityContext:
   runAsUser: {{ .Values.securityContext.user_id }}
   runAsGroup: {{ .Values.securityContext.group_id }}
-  fsGroup: {{ .Values.securityContext.group_id }}
+  fsGroup: {{ default .Values.securityContext.group_id .Values.securityContext.fsgroup_id }}
+  runAsNonRoot: {{ hasKey .Values.securityContext "runAsNonRoot" | ternary .Values.securityContext.runAsNonRoot true }}
+  seccompProfile:
+    type: {{ default "RuntimeDefault" .Values.securityContext.seccompProfileType }}
 {{- end }}
 
 {{/*
-   Generate securityContext for container
+   Generate securityContext for container (optional)
+   predefined variables: capabilities.drop
+   optional variables: readOnlyRootFilesystem, privileged, allowPrivilegeEscalation
+   Example in values.yaml
+   containerSecurityContext:
+     capabilities:
+       privileged: false
+       runAsUser: 1337
+       runAsGroup: 1337
+       runAsNonRoot: true
+       readOnlyRootFilesystem: true
+       allowPrivilegeEscalation: false
 */}}
 {{- define "common.containerSecurityContext" -}}
 securityContext:
+{{- if not .Values.containerSecurityContext }}
   readOnlyRootFilesystem: true
   privileged: false
   allowPrivilegeEscalation: false
+{{- else }}
+  readOnlyRootFilesystem: {{ hasKey .Values.containerSecurityContext "readOnlyRootFilesystem" | ternary .Values.containerSecurityContext.readOnlyRootFilesystem false }}
+  privileged: {{ hasKey .Values.containerSecurityContext "privileged" | ternary .Values.containerSecurityContext.privileged false }}
+  allowPrivilegeEscalation: {{ hasKey .Values.containerSecurityContext "allowPrivilegeEscalation" | ternary .Values.containerSecurityContext.allowPrivilegeEscalation false }}
+  runAsNonRoot: {{ hasKey .Values.containerSecurityContext "runAsNonRoot" | ternary .Values.containerSecurityContext.runAsNonRoot true }}
+{{-   if hasKey .Values.containerSecurityContext "runAsUser" }}
+  runAsUser: {{ .Values.containerSecurityContext.runAsUser }}
+{{-   end }}
+{{-   if hasKey .Values.containerSecurityContext "runAsGroup" }}
+  runAsGroup: {{ .Values.containerSecurityContext.runAsGroup }}
+{{-    end }}
+{{- end }}
+  capabilities:
+    drop:
+      - ALL
+      - CAP_NET_RAW
 {{- end }}
-