优化dev.sh,自动支持apps目录内所有新安装app的热重载
This commit is contained in:
parent
cafa864e4c
commit
2dcad515c0
25
dev.sh
25
dev.sh
@ -91,28 +91,17 @@ check_deps() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# 构建热重载目录参数(返回热重载参数,日志输出到stderr)
|
# 构建热重载目录参数(返回热重载参数,日志输出到stderr)
|
||||||
|
# 使用 --reload-include 模式,自动监听 apps 目录下所有 .py 文件,支持动态安装
|
||||||
build_reload_dirs() {
|
build_reload_dirs() {
|
||||||
local RELOAD_DIRS=""
|
local RELOAD_DIRS=""
|
||||||
local APPS_FILE="apps/apps.txt"
|
local APPS_DIR="apps"
|
||||||
|
|
||||||
if [ ! -f "$APPS_FILE" ]; then
|
if [ -d "$APPS_DIR" ]; then
|
||||||
warn "未找到 $APPS_FILE,仅监听 jingrow 应用" >&2
|
# 监听整个 apps 目录,自动包含新安装的 app(支持热重载)
|
||||||
[ -d "apps/jingrow" ] && RELOAD_DIRS="--reload-dir $(cd apps/jingrow && pwd)"
|
RELOAD_DIRS="--reload-dir $(cd "$APPS_DIR" && pwd)"
|
||||||
|
info "已启用 apps 目录热重载(自动监听所有 app)" >&2
|
||||||
else
|
else
|
||||||
info "从 $APPS_FILE 读取应用列表..." >&2
|
warn "apps 目录不存在" >&2
|
||||||
while IFS= read -r app_name || [ -n "$app_name" ]; do
|
|
||||||
app_name=$(echo "$app_name" | sed 's/#.*$//' | xargs)
|
|
||||||
[ -z "$app_name" ] && continue
|
|
||||||
|
|
||||||
if [ -d "apps/$app_name" ]; then
|
|
||||||
RELOAD_DIRS="$RELOAD_DIRS --reload-dir $(cd "apps/$app_name" && pwd)"
|
|
||||||
info " 添加热重载: $app_name" >&2
|
|
||||||
else
|
|
||||||
warn " 应用目录不存在: apps/$app_name" >&2
|
|
||||||
fi
|
|
||||||
done < "$APPS_FILE"
|
|
||||||
|
|
||||||
[ -z "$RELOAD_DIRS" ] && warn "未找到任何应用目录,仅使用默认重载" >&2 || success "热重载目录配置完成" >&2
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "$RELOAD_DIRS"
|
echo "$RELOAD_DIRS"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user