From 5ffd3423ff26029b2e8ad0684c02657d88e5c002 Mon Sep 17 00:00:00 2001 From: CaptainB Date: Tue, 15 Apr 2025 11:32:49 +0800 Subject: [PATCH] feat: load environment variables from .env file and update config loading logic --- .github/dependabot.yml | 7 +++++++ .gitignore | 4 +++- apps/maxkb/const.py | 12 +++++++++++- pyproject.toml | 12 ++++++------ 4 files changed, 27 insertions(+), 8 deletions(-) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 000000000..f26051151 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,7 @@ +version: 2 +updates: + - package-ecosystem: "pip" + directory: "/" + schedule: + interval: "weekly" + timezone: "Asia/Shanghai" \ No newline at end of file diff --git a/.gitignore b/.gitignore index 659c32f5f..faf3ec3ce 100644 --- a/.gitignore +++ b/.gitignore @@ -184,4 +184,6 @@ data .dev poetry.lock apps/setting/models_provider/impl/*/icon/ -tmp/ \ No newline at end of file +tmp/ +config.yml +config.yml \ No newline at end of file diff --git a/apps/maxkb/const.py b/apps/maxkb/const.py index ad06ad817..8e673580e 100644 --- a/apps/maxkb/const.py +++ b/apps/maxkb/const.py @@ -2,6 +2,8 @@ # import os +from dotenv import load_dotenv + from .conf import ConfigManager __all__ = ['BASE_DIR', 'PROJECT_DIR', 'VERSION', 'CONFIG'] @@ -9,4 +11,12 @@ __all__ = ['BASE_DIR', 'PROJECT_DIR', 'VERSION', 'CONFIG'] BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) PROJECT_DIR = os.path.dirname(BASE_DIR) VERSION = '2.0.0' -CONFIG = ConfigManager.load_user_config(root_path=os.path.abspath('/opt/maxkb/conf')) + +# load environment variables from .env file +load_dotenv() +# print(os.getenv('MAXKB_CONFIG')) +if os.getenv('MAXKB_CONFIG') is not None: + CONFIG = ConfigManager.load_user_config(root_path=PROJECT_DIR) +else: + CONFIG = ConfigManager.load_user_config(root_path=os.path.abspath('/opt/maxkb/conf')) + diff --git a/pyproject.toml b/pyproject.toml index 8f835a025..4faafe006 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,12 +7,12 @@ readme = "README.md" [tool.poetry.dependencies] python = "^3.11" -django = "^5.2" -drf-spectacular = { extras = ["sidecar"], version = "^0.28.0" } -django-redis = "^5.4.0" -django-db-connection-pool = "^1.2.5" -psycopg = {extras = ["binary"], version = "^3.2.6"} - +django = "5.2" +drf-spectacular = { extras = ["sidecar"], version = "0.28.0" } +django-redis = "5.4.0" +django-db-connection-pool = "1.2.5" +psycopg = {extras = ["binary"], version = "3.2.6"} +python-dotenv = "1.1.0" [build-system] requires = ["poetry-core"]