Source code for pynenc.util.redis_client

import redis

from pynenc.conf.config_redis import ConfigRedis


[docs] def get_redis_client(conf: ConfigRedis) -> redis.Redis: """ Creates a Redis client instance based on configuration. If redis_url is specified, creates client from URL. Otherwise, creates client using individual connection parameters. Empty username/password strings are treated as None. :param ConfigRedis conf: Redis configuration object :return: Configured Redis client instance :raises redis.ConnectionError: If connection fails """ if conf.redis_url: return redis.Redis.from_url(conf.redis_url) return redis.Redis( host=conf.redis_host, port=conf.redis_port, db=conf.redis_db, username=None if not conf.redis_username else conf.redis_username, password=None if not conf.redis_password else conf.redis_password, )