Files
meshtastic_mqtt_server/py/db_config.example.py
T

37 lines
1.2 KiB
Python

"""db_config 模板:复制为 db_config.py(已被 py/.gitignore 忽略)并按需修改。
口令一律从环境变量读取,严禁写进文件:
export MESH_SOURCE_DB_PASSWORD='...'
export MESH_TARGET_DB_PASSWORD='...'
"""
from __future__ import annotations
import os
def _require(name: str) -> str:
value = os.environ.get(name, "")
if not value:
raise RuntimeError(f"环境变量 {name} 未设置。请先 export 口令再运行。")
return value
SOURCE_CONFIG = {
"host": os.environ.get("MESH_SOURCE_DB_HOST", "source-db.example.com"),
"port": int(os.environ.get("MESH_SOURCE_DB_PORT", "3306")),
"user": os.environ.get("MESH_SOURCE_DB_USER", "meshuser"),
"password": _require("MESH_SOURCE_DB_PASSWORD"),
"database": os.environ.get("MESH_SOURCE_DB_NAME", "meshtastic_db"),
"charset": "utf8mb4",
}
TARGET_CONFIG = {
"host": os.environ.get("MESH_TARGET_DB_HOST", "target-db.example.com"),
"port": int(os.environ.get("MESH_TARGET_DB_PORT", "3306")),
"user": os.environ.get("MESH_TARGET_DB_USER", "meshtastic_db"),
"password": _require("MESH_TARGET_DB_PASSWORD"),
"database": os.environ.get("MESH_TARGET_DB_NAME", "meshtastic_db"),
"charset": "utf8mb4",
}