From ef29011a841950da0e75107cb4b9c4d1858261e2 Mon Sep 17 00:00:00 2001
From: jano3 <jano@bob.co.za>
Date: Mon, 10 Jun 2024 11:14:50 +0200
Subject: [PATCH] Update getting S3 secrets from secret manager

---
 secrets_manager/secrets_manager.go | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/secrets_manager/secrets_manager.go b/secrets_manager/secrets_manager.go
index 0f41ef0..9a4e99b 100644
--- a/secrets_manager/secrets_manager.go
+++ b/secrets_manager/secrets_manager.go
@@ -28,6 +28,11 @@ type DatabaseCredentials struct {
 	ReadOnlyHost       string `json:"aurora_read_only_host"`
 }
 
+type S3UploadCredentials struct {
+	AccessKeyID string `json:"accessKeyID"`
+	SecretKey   string `json:"secretKey"`
+}
+
 var (
 	secretCache, _      = secretcache.New()
 	secretManagerRegion = "af-south-1"
@@ -47,23 +52,17 @@ func GetDatabaseCredentials(secretID string, isDebug bool) (DatabaseCredentials,
 
 func GetS3UploadCredentialsProvider(secretID string, isDebug bool) (credentials.StaticCredentialsProvider, error) {
 	secret, _ := GetSecret(secretID, isDebug)
-	var secretValue map[string]string
+	var secretValue S3UploadCredentials
 	err := struct_utils.UnmarshalJSON([]byte(secret), &secretValue)
 	if err != nil {
 		return credentials.StaticCredentialsProvider{}, err
 	}
 
-	accessKeyID, ok := secretValue["AccessKeyID"]
-	if !ok {
-		return credentials.StaticCredentialsProvider{}, err
-	}
-
-	secretKey, ok := secretValue["SecretKey"]
-	if !ok {
+	if secretValue.AccessKeyID == "" || secretValue.SecretKey == "" {
 		return credentials.StaticCredentialsProvider{}, err
 	}
 
-	return credentials.NewStaticCredentialsProvider(accessKeyID, secretKey, ""), nil
+	return credentials.NewStaticCredentialsProvider(secretValue.AccessKeyID, secretValue.SecretKey, ""), nil
 }
 
 func instantiateSecretManagerClient(isDebug bool) (err error) {
-- 
GitLab