X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fconfigurationreader.cpp;h=18945b6ecd653d4c52ca11d9ca098fa0be51cdac;hb=ece67088ea6c4f67b9d0db74477a9d5c614d7763;hp=cc5e33e2c1fe8adece7f8986d0f05d830c96570e;hpb=aad0a0b5f51c2abd855aba0a9cb8e99ac5023600;p=ric-plt%2Fsdl.git diff --git a/src/configurationreader.cpp b/src/configurationreader.cpp index cc5e33e..18945b6 100644 --- a/src/configurationreader.cpp +++ b/src/configurationreader.cpp @@ -213,6 +213,8 @@ ConfigurationReader::ConfigurationReader(const Directories& directories, sentinelPortEnvVariableValue({}), sentinelMasterNameEnvVariableName(SENTINEL_MASTER_NAME_ENV_VAR_NAME), sentinelMasterNameEnvVariableValue({}), + dbClusterAddrListEnvVariableName(DB_CLUSTER_ADDR_LIST_ENV_VAR_NAME), + dbClusterAddrListEnvVariableValue({}), jsonDatabaseConfiguration(boost::none), logger(logger) { @@ -230,6 +232,9 @@ ConfigurationReader::ConfigurationReader(const Directories& directories, envStr = system.getenv(sentinelMasterNameEnvVariableName.c_str()); if (envStr) sentinelMasterNameEnvVariableValue = envStr; + envStr = system.getenv(dbClusterAddrListEnvVariableName.c_str()); + if (envStr) + dbClusterAddrListEnvVariableValue = envStr; } readConfigurationFromDirectories(directories); @@ -311,7 +316,14 @@ void ConfigurationReader::readDatabaseConfiguration(DatabaseConfiguration& datab } else { - validateAndSetDbType("redis-sentinel", databaseConfiguration, sourceForDatabaseConfiguration); + if (dbClusterAddrListEnvVariableValue.empty()) + validateAndSetDbType("redis-sentinel", databaseConfiguration, sourceForDatabaseConfiguration); + else { + validateAndSetDbType("sdl-cluster", databaseConfiguration, sourceForDatabaseConfiguration); + parseDatabaseServersConfigurationFromString(databaseConfiguration, + dbClusterAddrListEnvVariableValue, + dbClusterAddrListEnvVariableName); + } databaseConfiguration.checkAndApplySentinelAddress(dbHostEnvVariableValue + ":" + sentinelPortEnvVariableValue); databaseConfiguration.checkAndApplySentinelMasterName(sentinelMasterNameEnvVariableValue); }