diff --git a/secrets_manager/secrets_manager.go b/secrets_manager/secrets_manager.go index 9a4e99bef62b2c34c1eda68ee61b3df7095a562c..102e3517474d3ed524b5f505f609666608cf067c 100644 --- a/secrets_manager/secrets_manager.go +++ b/secrets_manager/secrets_manager.go @@ -51,15 +51,23 @@ func GetDatabaseCredentials(secretID string, isDebug bool) (DatabaseCredentials, } func GetS3UploadCredentialsProvider(secretID string, isDebug bool) (credentials.StaticCredentialsProvider, error) { - secret, _ := GetSecret(secretID, isDebug) var secretValue S3UploadCredentials - err := struct_utils.UnmarshalJSON([]byte(secret), &secretValue) - if err != nil { - return credentials.StaticCredentialsProvider{}, err + if secretID != "" { + secret, _ := GetSecret(secretID, isDebug) + err := struct_utils.UnmarshalJSON([]byte(secret), &secretValue) + if err != nil { + return credentials.StaticCredentialsProvider{}, err + } + } + + // Attempt to get credentials from the environment variables if not set in the secret + if secretValue.AccessKeyID == "" && secretValue.SecretKey == "" { + secretValue.AccessKeyID = os.Getenv("AWS_ACCESS_KEY") + secretValue.SecretKey = os.Getenv("AWS_SECRET_KEY") } if secretValue.AccessKeyID == "" || secretValue.SecretKey == "" { - return credentials.StaticCredentialsProvider{}, err + return credentials.StaticCredentialsProvider{}, nil } return credentials.NewStaticCredentialsProvider(secretValue.AccessKeyID, secretValue.SecretKey, ""), nil