From 9025190f0b008e8c3c6d51f77897ca5d3e163912 Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Mon, 24 Jul 2023 10:08:14 +0200
Subject: [PATCH] OZG-3961 OZG-4082 try with user#userPassword; use created
 namespace

---
 .../keycloak/user/KeycloakUserRemoteService.java  | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/src/main/java/de/ozgcloud/operator/keycloak/user/KeycloakUserRemoteService.java b/src/main/java/de/ozgcloud/operator/keycloak/user/KeycloakUserRemoteService.java
index ae3f4b6..03da061 100644
--- a/src/main/java/de/ozgcloud/operator/keycloak/user/KeycloakUserRemoteService.java
+++ b/src/main/java/de/ozgcloud/operator/keycloak/user/KeycloakUserRemoteService.java
@@ -120,22 +120,21 @@ class KeycloakUserRemoteService {
 		log.log(Level.INFO, "Create secret for user: " + userSpec.getKeycloakUser().getUsername());
 		var secretName = userSpec.getKeycloakUser().getUsername().toLowerCase() + "-credentials";
 
-		var namespace = "keycloak";
+		var namespace = createdNamespace;
 		var secret = getSecret(secretName, namespace);
 		if (Objects.isNull(secret.get())) {
 			log.log(Level.INFO, "...secret does not exist, create one...");
 
-			kubernetesClient.secrets().inNamespace(namespace).create(buildSecret(secretName));
+			var credentialsSecret = buildSecret(secretName, userSpec.getKeycloakUser().getPassword());
+			kubernetesClient.secrets().inNamespace(namespace).create(credentialsSecret);
 
 			log.log(Level.INFO, "...secret created '" + secretName + "' in " + namespace + " for user " + userSpec.getKeycloakUser().getUsername());
-			log.log(Level.INFO, "...load created secret...");
-			var createdSecret = getSecret(secretName, namespace);
-			var newPassword = getPassword(createdSecret);
+			var newPassword = getPassword(getSecret(secretName, namespace));
 			log.log(Level.INFO, "return password from created secret:" + newPassword);
 			return newPassword;
 		}
 		var password = getPassword(secret);
-		log.log(Level.INFO, "secret exists, return password:" + password);
+		log.log(Level.INFO, "secret exists, return with password:" + password);
 		return password;
 	}
 
@@ -143,7 +142,7 @@ class KeycloakUserRemoteService {
 		return kubernetesClient.secrets().inNamespace(namespace).withName(secretName);
 	}
 
-	Secret buildSecret(String name) {
+	Secret buildSecret(String name, String password) {
 		var metadata = new ObjectMeta();
 		metadata.setName(name);
 		metadata.setGenerateName(name);
@@ -152,7 +151,7 @@ class KeycloakUserRemoteService {
 		return new SecretBuilder()
 				.withType("Opaque")
 				.withMetadata(metadata)
-				.addToStringData(SECRET_PASSWORD_FIELD, "123Test")
+				.addToStringData(SECRET_PASSWORD_FIELD, password)
 				.addToStringData(SECRET_NAME_FIELD, name)
 				.build();
 	}
-- 
GitLab