From 6640c54bf3e5c2d2592abf73b07d5b0347bfde92 Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Thu, 4 Jan 2024 11:10:04 +0100
Subject: [PATCH] OZG-4453 use data instead of stringData for all data

---
 .../operator/ElasticsearchReconciler.java     | 12 ++-------
 .../OzgCloudElasticsearchSecretHelper.java    |  8 +++---
 .../operator/ElasticsearchReconcilerTest.java | 27 -------------------
 ...OzgCloudElasticsearchSecretHelperTest.java | 10 +++----
 4 files changed, 11 insertions(+), 46 deletions(-)

diff --git a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java
index 268157f..af58241 100644
--- a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java
+++ b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java
@@ -42,19 +42,11 @@ public class ElasticsearchReconciler implements Reconciler<OzgCloudElasticsearch
 		}
 	}
 	
-	String getPassword(Secret secret) {
+	private String getPassword(Secret secret) {
 		log.info("get password for elastic user...");
 		log.info(String.format("from secret string map: %s", secret.getStringData()));
 		log.info(String.format("from secret data map: %s", secret.getData()));
-		return decode(MapUtils.getString(secret.getData(), OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD));
-	}
-	
-	private String decode(String encodedPassword) {
-		try {
-			return new String(Base64.getDecoder().decode(encodedPassword));
-		} catch (Exception e) {
-			throw new RuntimeException("Could not decode password from secret.");
-		}
+		return MapUtils.getString(secret.getData(), OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD);
 	}
 	
 	UpdateControl<OzgCloudElasticsearchCustomResource> buildExceptionUpdateControl(OzgCloudElasticsearchCustomResource resource, Exception exception) {
diff --git a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelper.java b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelper.java
index 2c69358..6fbe2c3 100644
--- a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelper.java
+++ b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelper.java
@@ -29,10 +29,10 @@ public class OzgCloudElasticsearchSecretHelper {
 		return new SecretBuilder()
 				.withType(SECRET_TYPE)
 				.withMetadata(createMetaData(name, namespace))
-				.addToStringData(CREDENTIAL_SECRET_ADDRESS_FIELD, buildSecretAddress())
-				.addToStringData(CREDENTIAL_SECRET_INDEX_FIELD, namespace)
-				.addToStringData(CREDENTIAL_SECRET_PASSWORD_FIELD, generatePassword())
-				.addToStringData(CREDENTIAL_SECRET_USERNAME_FIELD, namespace)
+				.addToData(CREDENTIAL_SECRET_ADDRESS_FIELD, buildSecretAddress())
+				.addToData(CREDENTIAL_SECRET_INDEX_FIELD, namespace)
+				.addToData(CREDENTIAL_SECRET_PASSWORD_FIELD, generatePassword())
+				.addToData(CREDENTIAL_SECRET_USERNAME_FIELD, namespace)
 				.build();
 	}
 	
diff --git a/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/ElasticsearchReconcilerTest.java b/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/ElasticsearchReconcilerTest.java
index 16dc22c..5c708e5 100644
--- a/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/ElasticsearchReconcilerTest.java
+++ b/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/ElasticsearchReconcilerTest.java
@@ -159,33 +159,6 @@ class ElasticsearchReconcilerTest {
 				return reconciler.buildExceptionUpdateControl(resource, exception);
 			}
 		}
-		
-		@DisplayName("get password")
-		@Nested
-		class TestGetPassword {
-			
-			private static final String SECRET_PASSWORD = LoremIpsum.getInstance().getWords(1);
-
-			@Test
-			void shouldReturnPasssowrd() {
-				var secret = buildSecret();
-
-				var password = reconciler.getPassword(secret);
-
-				assertThat(password).isEqualTo(SECRET_PASSWORD);
-			}
-
-			private Secret buildSecret() {
-				return new SecretBuilder()
-						.addToData(Map.of(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD,
-								encodeStringBase64(SECRET_PASSWORD)))
-						.build();
-			}
-
-			private String encodeStringBase64(String string) {
-				return Base64.getEncoder().encodeToString(string.getBytes());
-			}
-		}
 	}
 	
 	@DisplayName("Cleanup")
diff --git a/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelperTest.java b/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelperTest.java
index 7959af7..3f2a3de 100644
--- a/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelperTest.java
+++ b/ozgcloud-elasticsearch-operator/src/test/java/de/ozgcloud/operator/OzgCloudElasticsearchSecretHelperTest.java
@@ -77,7 +77,7 @@ class OzgCloudElasticsearchSecretHelperTest {
 			void shouldBeSet() {
 				var secret = buildCredentialSecret();
 				
-				assertThat(secret.getStringData()).containsEntry(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_ADDRESS_FIELD, String.format("%s:%s", HOST, PORT));
+				assertThat(secret.getData()).containsEntry(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_ADDRESS_FIELD, String.format("%s:%s", HOST, PORT));
 			}
 			
 			@Test
@@ -99,22 +99,22 @@ class OzgCloudElasticsearchSecretHelperTest {
 		void shouldContainIndex() {
 			var secret = buildCredentialSecret();
 			
-			assertThat(secret.getStringData()).containsEntry(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_INDEX_FIELD, NamespaceTestFactory.NAMESPACE);
+			assertThat(secret.getData()).containsEntry(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_INDEX_FIELD, NamespaceTestFactory.NAMESPACE);
 		}
 		
 		@Test
 		void shouldContainPassword() {
 			var secret = buildCredentialSecret();
 			
-			assertThat(secret.getStringData()).containsKey(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD);
-			assertThat(secret.getStringData().get(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD)).isNotNull();
+			assertThat(secret.getData()).containsKey(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD);
+			assertThat(secret.getData().get(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD)).isNotNull();
 		}
 		
 		@Test
 		void shouldContainUsername() {
 			var secret = buildCredentialSecret();
 			
-			assertThat(secret.getStringData()).containsEntry(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_USERNAME_FIELD, NamespaceTestFactory.NAMESPACE);
+			assertThat(secret.getData()).containsEntry(OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_USERNAME_FIELD, NamespaceTestFactory.NAMESPACE);
 		}
 		
 		private Secret buildCredentialSecret() {
-- 
GitLab