diff --git a/swh/storage/api/server.py b/swh/storage/api/server.py --- a/swh/storage/api/server.py +++ b/swh/storage/api/server.py @@ -383,11 +383,16 @@ return encode_data(get_storage().diff_revision(**decode_request(request))) +api_cfg = None + + def run_from_webserver(environ, start_response, config_path=DEFAULT_CONFIG_PATH): """Run the WSGI app from the webserver, loading the configuration.""" - cfg = config.load_named_config(config_path, DEFAULT_CONFIG) - app.config.update(cfg) + global api_cfg + if not api_cfg: + api_cfg = config.load_named_config(config_path, DEFAULT_CONFIG) + app.config.update(api_cfg) handler = logging.StreamHandler() app.logger.addHandler(handler) return app(environ, start_response)