From a17dfd2087ef56ee0754687cd96e83ab28fb779d Mon Sep 17 00:00:00 2001 From: Benjamin Bertrand <benjamin.bertrand@esss.se> Date: Fri, 27 Apr 2018 09:26:27 +0200 Subject: [PATCH] Change Flask-Session redis_store config_prefix The "REDIS_URL" variable is hard-coded in RQ Dashboard. REDIS_URL was used by redis_store that is passed to Flask Session. The url variable used by Flask-Redis can be changed by setting the config_prefix. 1. Rename REDIS_URL to SESSION_REDIS_URL 2. Rename redis_store to session_redis_store 3. Use "SESSION_REDIS" config_prefix to initialize session_redis_store This makes it clear that this Redis instance is used by Flask-Session. REDIS_URL will be used for RQ. --- app/extensions.py | 2 +- app/factory.py | 6 +++--- app/settings.py | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/extensions.py b/app/extensions.py index 707534c..f0dc0cb 100644 --- a/app/extensions.py +++ b/app/extensions.py @@ -42,6 +42,6 @@ admin = Admin(template_mode='bootstrap3') mail = Mail() jwt = JWTManager() toolbar = DebugToolbarExtension() -redis_store = FlaskRedis() +session_redis_store = FlaskRedis(config_prefix='SESSION_REDIS') fsession = Session() cache = Cache() diff --git a/app/factory.py b/app/factory.py index 75430d1..94371ed 100644 --- a/app/factory.py +++ b/app/factory.py @@ -14,7 +14,7 @@ from flask import Flask from whitenoise import WhiteNoise from . import settings, models from .extensions import (db, migrate, login_manager, ldap_manager, bootstrap, - admin, mail, jwt, toolbar, redis_store, fsession, cache) + admin, mail, jwt, toolbar, session_redis_store, fsession, cache) from .admin.views import (AdminModelView, ItemAdmin, UserAdmin, TokenAdmin, NetworkAdmin) from .main.views import bp as main @@ -86,8 +86,8 @@ def create_app(config=None): mail.init_app(app) jwt.init_app(app) toolbar.init_app(app) - redis_store.init_app(app) - app.config['SESSION_REDIS'] = redis_store + session_redis_store.init_app(app) + app.config['SESSION_REDIS'] = session_redis_store fsession.init_app(app) cache.init_app(app) diff --git a/app/settings.py b/app/settings.py index 41bee74..1694d16 100644 --- a/app/settings.py +++ b/app/settings.py @@ -27,7 +27,7 @@ JWT_BLACKLIST_TOKEN_CHECKS = ['access', 'refresh'] JWT_ACCESS_TOKEN_EXPIRES = timedelta(hours=12) SESSION_TYPE = 'redis' -REDIS_URL = 'redis://redis:6379/0' +SESSION_REDIS_URL = 'redis://redis:6379/0' CACHE_TYPE = 'redis' CACHE_REDIS_URL = 'redis://redis:6379/1' RQ_REDIS_URL = 'redis://redis:6379/2' -- GitLab