From 4668ef9c96d56d15e7be38a3ce38135ba769e8e4 Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Thu, 25 Jul 2024 10:49:42 +0200
Subject: [PATCH] OZG-6177 update etr-user-cr

---
 elster-transfer/templates/_helpers.tpl        | 12 +++++++++++
 .../templates/elstertransfer_user_cr.yaml     | 20 +++++++++++--------
 2 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/elster-transfer/templates/_helpers.tpl b/elster-transfer/templates/_helpers.tpl
index 117e6b0..caad293 100644
--- a/elster-transfer/templates/_helpers.tpl
+++ b/elster-transfer/templates/_helpers.tpl
@@ -60,4 +60,16 @@ app.kubernetes.io/namespace: {{ .Release.Namespace }}
 {{- $customList = append $customList (dict "name" $key "value" $value) }}
 {{- end -}}
 {{- $customList | toYaml -}}
+{{- end -}}
+
+
+{{- define "app.generateElsterTransferUserRessourceName" -}}
+{{- $lowerUserName := . | lower }}
+{{- $alphanumericUserName :=  (include "app.replaceAllNonAlphanumeric" $lowerUserName ) }}
+{{- printf "%s-elster-transfer-user"  ( $alphanumericUserName | trunc 20) }}
+{{- end -}}
+
+
+{{- define "app.replaceAllNonAlphanumeric" -}}
+{{- trimAll "-" ( regexReplaceAll "[^a-zA-Z0-9-]" . "" ) }}
 {{- end -}}
\ No newline at end of file
diff --git a/elster-transfer/templates/elstertransfer_user_cr.yaml b/elster-transfer/templates/elstertransfer_user_cr.yaml
index 9d2f5cc..7333862 100644
--- a/elster-transfer/templates/elstertransfer_user_cr.yaml
+++ b/elster-transfer/templates/elstertransfer_user_cr.yaml
@@ -1,14 +1,18 @@
+
 {{- if not .Values.disableOzgElsterTransferOperator -}}
+{{ range $user := ((.Values.CR).etr_users | default list) }}
+---
 apiVersion: operator.ozgcloud.de/v1
 kind: OzgCloudElsterTransferUser
 metadata:
-  name: {{ include "app.namespace" . }}-user
-  namespace: {{ include "app.namespace" . }}
+  name: {{ include "app.generateElsterTransferUserRessourceName" (deepCopy $user.login) }}
+  namespace: {{ include "app.namespace" $ }}
 spec:
-  keep_after_delete: {{ (.Values.user).keep_after_delete | default false }}
-  login: {{ (.Values.user).name }}  
-  role: {{ (.Values.user).role | default "USER" }}
-  credentials: {{ (.Values.user).credentials }}
-  group: {{ (.Values.user).group | default "Administratoren" }}
-{{- end }}
+  keep_after_delete: {{ $.Values.CR.keep_after_delete | default false }}
+  login: {{ $user.login }}  
+  role: {{ $user.role | default "USER" }}
+  credentials: {{ $user.credentials }}
+  group: {{ $user.group | default "Administratoren" }}
 
+{{ end }}
+{{- end -}}
\ No newline at end of file
-- 
GitLab