aboutsummaryrefslogtreecommitdiff
path: root/wqflask/utility/startup_config.py
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2023-06-15 14:40:37 +0300
committerFrederick Muriuki Muriithi2023-06-20 13:36:50 +0300
commitaa4d213692cb27a903fe1593e2dd3387e638b350 (patch)
treef41cfdf7e369cae767af5534cfc02c9998b9e4a2 /wqflask/utility/startup_config.py
parenta56d857dc1f6dbc25819a4af116139a2f3e14a68 (diff)
downloadgenenetwork2-aa4d213692cb27a903fe1593e2dd3387e638b350.tar.gz
Configs: Introduce Blueprints. Refactor configs in webqtlConfig.
* Introduce flask Blueprints to help with decoupling the various modules from the `wqflask/__init__.py` module * Refactor settings: Create a function `base.webqtlConfig.init_app(...)` to handle setting up the configurations on the app correctly. Call this function at app creation time. * Move configuration utility functions from `utility.tools` module to `utility.configuration` module. * Use the `get_setting(...)` function to retrieve configuration settings from the application.
Diffstat (limited to 'wqflask/utility/startup_config.py')
-rw-r--r--wqflask/utility/startup_config.py23
1 files changed, 11 insertions, 12 deletions
diff --git a/wqflask/utility/startup_config.py b/wqflask/utility/startup_config.py
index 69cac124..5ab43b1a 100644
--- a/wqflask/utility/startup_config.py
+++ b/wqflask/utility/startup_config.py
@@ -1,11 +1,10 @@
from wqflask import app
-from utility.tools import WEBSERVER_MODE
-from utility.tools import show_settings
-from utility.tools import get_setting_int
-from utility.tools import get_setting
-from utility.tools import get_setting_bool
+from utility.configuration import show_settings
+from utility.configuration import get_setting_int
+from utility.configuration import get_setting
+from utility.configuration import get_setting_bool
BLUE = '\033[94m'
@@ -14,28 +13,28 @@ BOLD = '\033[1m'
ENDC = '\033[0m'
-def app_config():
+def app_config(app):
app.config['SESSION_TYPE'] = app.config.get('SESSION_TYPE', 'filesystem')
if not app.config.get('SECRET_KEY'):
import os
app.config['SECRET_KEY'] = str(os.urandom(24))
- mode = WEBSERVER_MODE
+ mode = get_setting(app, "WEBSERVER_MODE")
if mode in ["DEV", "DEBUG"]:
app.config['TEMPLATES_AUTO_RELOAD'] = True
if mode == "DEBUG":
app.debug = True
print("==========================================")
- show_settings()
+ show_settings(app)
- port = get_setting_int("SERVER_PORT")
+ port = get_setting_int(app, "SERVER_PORT")
- if get_setting_bool("USE_GN_SERVER"):
+ if get_setting_bool(app, "USE_GN_SERVER"):
print(f"GN2 API server URL is [{BLUE}GN_SERVER_URL{ENDC}]")
import requests
- page = requests.get(get_setting("GN_SERVER_URL"))
+ page = requests.get(get_setting(app, "GN_SERVER_URL"))
if page.status_code != 200:
raise Exception("API server not found!")
print(f"GN2 is running. Visit {BLUE}"
f"[http://localhost:{str(port)}/{ENDC}]"
- f"({get_setting('WEBSERVER_URL')})")
+ f"({get_setting(app, 'WEBSERVER_URL')})")