view frontends/wsgi.py @ 6823:fe0091279f50

Refactor session db logging and key generation for sessions/otks While I was working on the redis sessiondb stuff, I noticed that log_wanrning, get_logger ... was duplicated. Also there was code to generate a unique key for otks that was duplicated. Changes: creating new sessions_common.py and SessionsCommon class to provide methods: log_warning, log_info, log_debug, get_logger, getUniqueKey getUniqueKey method is closer to the method used to make session keys in client.py. sessions_common.py now report when random_.py chooses a weak random number generator. Removed same from rest.py. get_logger reconciles all logging under roundup.hyperdb.backends.<name of BasicDatabase class> some backends used to log to root logger. have BasicDatabase in other sessions_*.py modules inherit from SessionCommon. change logging to use log_* methods. In addition: remove unused imports reported by flake8 and other formatting changes modify actions.py, rest.py, templating.py to use getUniqueKey method. add tests for new methods test_redis_session.py swap out ModuleNotFoundError for ImportError to prevent crash in python2 when redis is not present. allow injection of username:password or just password into redis connection URL. set pytest_redis_pw envirnment variable to password or user:password when running test.
author John Rouillard <rouilj@ieee.org>
date Sun, 07 Aug 2022 01:51:11 -0400
parents 285d9adfefdb
children
line wrap: on
line source

# If you installed roundup to the system locations
# using pip you don't need to change this
# section. If you installed roundup in a custom
# location, uncomment these lines and change the
# path in the append() method to your custom path.
#import sys
#sys.path.append('/custom/location/where/roundup/is/installed')

# Obtain the WSGI request dispatcher
from roundup.cgi.wsgi_handler import RequestDispatcher

# Set the path to tracker home.
tracker_home = '/path/to/tracker'

# Enable the feature flag to speed up wsgi response by caching the
#   Roundup tracker instance on startup. See upgrading.txt for
#   more info.
feature_flags =  { "cache_tracker": "" }

# Definition signature for app: app(environ, start_response):
# If using apache mod_wsgi change app to application.
app =  RequestDispatcher(tracker_home, feature_flags=feature_flags)

Roundup Issue Tracker: http://roundup-tracker.org/