Files
stock/src/config/config.py
2025-11-05 08:57:09 +08:00

69 lines
1.7 KiB
Python

import os
from pathlib import Path
db_config_dev = {
'host': 'testdb',
'user': 'root',
'password': 'mysqlpw',
'database': 'stockdb'
}
db_config_nas = {
'host': 'mariadb',
'user': 'root',
'password': 'root',
'database': 'stockdb'
}
db_config_run = {
'host': 'testdb',
'user': 'root',
'password': 'mysqlpw',
'database': 'stockdb'
}
db_config = {}
current_env = os.environ.get('DB_ENV', 'dev')
if current_env == 'dev':
db_config = db_config_dev
elif current_env == 'nas':
db_config = db_config_nas
elif current_env == 'run':
db_config = db_config_run
else:
db_config = db_config_dev # 默认使用开发环境配置
home_dir = os.path.expanduser("~")
global_host_data_dir = f'{home_dir}/hostdir/stock_data'
global_share_db_dir = f'{home_dir}/sharedata/sqlite'
global_host_input_dir = f'{global_host_data_dir}/input'
global_pdf_data_dir = f'{home_dir}/sharedata/stock_data'
# 兼容以前的定义
global_stock_data_dir = global_host_data_dir
global_share_data_dir = f'{home_dir}/sharedata'
# 获取当前文件所在目录
current_dir = Path(__file__).resolve().parent
# 找到项目根目录,假设项目根目录下有一个 src 文件夹
project_root = current_dir
while project_root.name != 'src' and project_root != project_root.parent:
project_root = project_root.parent
# 获取 src 目录
def get_src_directory():
return project_root
# 获取 src/config 目录
def get_src_config_directory():
return project_root / 'config'
# 获取 log 目录
def get_log_directory():
"""
获取与 src 平行的 log 目录路径。如果 log 目录不存在,则自动创建。
"""
log_dir = project_root.parent / 'log'
log_dir.mkdir(parents=True, exist_ok=True)
return log_dir