From faf2739d30decda1e0ba46699ebec776ef7d3e0d Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Fri, 28 Oct 2022 16:47:30 +0530 Subject: Use Xapian index path from app settings. App settings should be accessed from current_app. It should not be hard-coded to a variable in a module. * gn3/db_utils.py: Do not import XAPIAN_DB_PATH from gn3.settings. (xapian_database): Accept path argument. * gn3/api/search.py: Import current_app from flask. (search_results): Pass Xapian index path to xapian_database. --- gn3/db_utils.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gn3/db_utils.py') diff --git a/gn3/db_utils.py b/gn3/db_utils.py index af1024a..4fd3666 100644 --- a/gn3/db_utils.py +++ b/gn3/db_utils.py @@ -4,7 +4,7 @@ from typing import Any, Iterator, Protocol, Tuple from urllib.parse import urlparse import MySQLdb as mdb import xapian -from gn3.settings import SQL_URI, XAPIAN_DB_PATH +from gn3.settings import SQL_URI def parse_db_url() -> Tuple: @@ -47,10 +47,10 @@ def database_connection() -> Iterator[Connection]: @contextlib.contextmanager -def xapian_database(): +def xapian_database(path): """Open xapian database read-only.""" # pylint: disable-next=invalid-name - db = xapian.Database(XAPIAN_DB_PATH) + db = xapian.Database(path) try: yield db finally: -- cgit v1.2.3