浏览代码

fix: RESET_CONFIG_ON_START not working

Timothy J. Baek 7 月之前
父节点
当前提交
92b1acd6fb
共有 3 个文件被更改,包括 15 次插入12 次删除
  1. 6 0
      backend/open_webui/config.py
  2. 4 12
      backend/open_webui/env.py
  3. 5 0
      backend/open_webui/main.py

+ 6 - 0
backend/open_webui/config.py

@@ -87,6 +87,12 @@ def save_to_db(data):
         db.commit()
         db.commit()
 
 
 
 
+def reset_config():
+    with get_db() as db:
+        db.query(Config).delete()
+        db.commit()
+
+
 # When initializing, check if config.json exists and migrate it to the database
 # When initializing, check if config.json exists and migrate it to the database
 if os.path.exists(f"{DATA_DIR}/config.json"):
 if os.path.exists(f"{DATA_DIR}/config.json"):
     data = load_json_config()
     data = load_json_config()

+ 4 - 12
backend/open_webui/env.py

@@ -234,18 +234,6 @@ if FROM_INIT_PY:
     ).resolve()
     ).resolve()
 
 
 
 
-RESET_CONFIG_ON_START = (
-    os.environ.get("RESET_CONFIG_ON_START", "False").lower() == "true"
-)
-
-if RESET_CONFIG_ON_START:
-    try:
-        os.remove(f"{DATA_DIR}/config.json")
-        with open(f"{DATA_DIR}/config.json", "w") as f:
-            f.write("{}")
-    except Exception:
-        pass
-
 ####################################
 ####################################
 # Database
 # Database
 ####################################
 ####################################
@@ -265,6 +253,10 @@ if "postgres://" in DATABASE_URL:
     DATABASE_URL = DATABASE_URL.replace("postgres://", "postgresql://")
     DATABASE_URL = DATABASE_URL.replace("postgres://", "postgresql://")
 
 
 
 
+RESET_CONFIG_ON_START = (
+    os.environ.get("RESET_CONFIG_ON_START", "False").lower() == "true"
+)
+
 ####################################
 ####################################
 # WEBUI_AUTH (Required for security)
 # WEBUI_AUTH (Required for security)
 ####################################
 ####################################

+ 5 - 0
backend/open_webui/main.py

@@ -79,6 +79,7 @@ from open_webui.config import (
     WEBUI_NAME,
     WEBUI_NAME,
     AppConfig,
     AppConfig,
     run_migrations,
     run_migrations,
+    reset_config,
 )
 )
 from open_webui.constants import ERROR_MESSAGES, TASKS, WEBHOOK_MESSAGES
 from open_webui.constants import ERROR_MESSAGES, TASKS, WEBHOOK_MESSAGES
 from open_webui.env import (
 from open_webui.env import (
@@ -92,6 +93,7 @@ from open_webui.env import (
     WEBUI_SESSION_COOKIE_SAME_SITE,
     WEBUI_SESSION_COOKIE_SAME_SITE,
     WEBUI_SESSION_COOKIE_SECURE,
     WEBUI_SESSION_COOKIE_SECURE,
     WEBUI_URL,
     WEBUI_URL,
+    RESET_CONFIG_ON_START,
 )
 )
 from fastapi import (
 from fastapi import (
     Depends,
     Depends,
@@ -187,6 +189,9 @@ https://github.com/open-webui/open-webui
 async def lifespan(app: FastAPI):
 async def lifespan(app: FastAPI):
     run_migrations()
     run_migrations()
 
 
+    if RESET_CONFIG_ON_START:
+        reset_config()
+
     asyncio.create_task(periodic_usage_pool_cleanup())
     asyncio.create_task(periodic_usage_pool_cleanup())
     yield
     yield