From be60f7c8719dcb127ddd8c92f5b283ba9ab28078 Mon Sep 17 00:00:00 2001 From: Xiaoyong Zhu Date: Tue, 26 Oct 2021 05:44:17 -0700 Subject: [PATCH 1/2] Add auth support for redis Signed-off-by: Xiaoyong Zhu --- .../main/java/feast/serving/config/FeastProperties.java | 3 ++- .../storage/connectors/redis/retriever/RedisClient.java | 5 +++++ .../connectors/redis/retriever/RedisStoreConfig.java | 8 +++++++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/serving/src/main/java/feast/serving/config/FeastProperties.java b/serving/src/main/java/feast/serving/config/FeastProperties.java index 7c5c87a..1d4d181 100644 --- a/serving/src/main/java/feast/serving/config/FeastProperties.java +++ b/serving/src/main/java/feast/serving/config/FeastProperties.java @@ -329,7 +329,8 @@ public RedisStoreConfig getRedisConfig() { return new RedisStoreConfig( this.config.get("host"), Integer.valueOf(this.config.get("port")), - Boolean.valueOf(this.config.getOrDefault("ssl", "false"))); + Boolean.valueOf(this.config.getOrDefault("ssl", "false")), + this.config.getOrDefault("password", "") ); } public BigTableStoreConfig getBigtableConfig() { diff --git a/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java b/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java index faa8e96..61c2c6d 100644 --- a/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java +++ b/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java @@ -52,6 +52,11 @@ public static RedisClientAdapter create(RedisStoreConfig config) { if (config.getSsl()) { uri.setSsl(true); } + + if (!config.getPassword().isEmpty()) { + uri.setPassword(config.getPassword()); + } + StatefulRedisConnection connection = io.lettuce.core.RedisClient.create(uri).connect(new ByteArrayCodec()); diff --git a/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisStoreConfig.java b/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisStoreConfig.java index 5e4560a..3045235 100644 --- a/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisStoreConfig.java +++ b/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisStoreConfig.java @@ -20,11 +20,13 @@ public class RedisStoreConfig { private final String host; private final Integer port; private final Boolean ssl; + private final String password; - public RedisStoreConfig(String host, Integer port, Boolean ssl) { + public RedisStoreConfig(String host, Integer port, Boolean ssl, String password) { this.host = host; this.port = port; this.ssl = ssl; + this.password = password; } public String getHost() { @@ -38,4 +40,8 @@ public Integer getPort() { public Boolean getSsl() { return this.ssl; } + + public String getPassword() { + return this.password; + } } From fe4af9a1f371b72981b728b18726a38b4e8dff81 Mon Sep 17 00:00:00 2001 From: Xiaoyong Zhu Date: Tue, 26 Oct 2021 16:35:36 -0700 Subject: [PATCH 2/2] Fix format issue Signed-off-by: Xiaoyong Zhu --- serving/src/main/java/feast/serving/config/FeastProperties.java | 2 +- .../feast/storage/connectors/redis/retriever/RedisClient.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/serving/src/main/java/feast/serving/config/FeastProperties.java b/serving/src/main/java/feast/serving/config/FeastProperties.java index 1d4d181..88d9f53 100644 --- a/serving/src/main/java/feast/serving/config/FeastProperties.java +++ b/serving/src/main/java/feast/serving/config/FeastProperties.java @@ -330,7 +330,7 @@ public RedisStoreConfig getRedisConfig() { this.config.get("host"), Integer.valueOf(this.config.get("port")), Boolean.valueOf(this.config.getOrDefault("ssl", "false")), - this.config.getOrDefault("password", "") ); + this.config.getOrDefault("password", "")); } public BigTableStoreConfig getBigtableConfig() { diff --git a/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java b/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java index 61c2c6d..e1699bb 100644 --- a/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java +++ b/storage/connectors/redis/src/main/java/feast/storage/connectors/redis/retriever/RedisClient.java @@ -56,7 +56,7 @@ public static RedisClientAdapter create(RedisStoreConfig config) { if (!config.getPassword().isEmpty()) { uri.setPassword(config.getPassword()); } - + StatefulRedisConnection connection = io.lettuce.core.RedisClient.create(uri).connect(new ByteArrayCodec());