会员服务器:上传肥牛应用源码 v1.5.1(fnnas.huiyuan 完整 fpk 工程结构)
含 app/server/server.cjs 服务端、app/www 网页(admin/auth/项目云/库备份/settings)、 app/ui 图标、cmd 安装脚本、config、wizard、manifest、图标与对接文档。 按仓库规则排除构建产物 *.fpk 与 .mimosa 缓存。
This commit is contained in:
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
### 升级初始化:升级覆盖的是 TRIM_APPDEST(target),不动 TRIM_PKGETC(配置)与数据目录。
|
||||
### 但为防升级流程异常导致配置丢失,升级前把 app.env/TLS/RSA 密钥/数据库打包备份到
|
||||
### 数据目录(应用目录之外,升级不清除),upgrade_callback 检测到配置丢失时用此备份恢复。
|
||||
### 备份内容不含任何会员数据和配置本体,只在升级窗口存在,升级正常完成后保留最近一份
|
||||
### 作为兜底,不参与运行。
|
||||
|
||||
DB_DIR="${TRIM_DATA_SHARE_PATHS%%:*}"
|
||||
|
||||
# 自定义数据目录优先(与 install_callback/uninstall_init 的解析规则一致)
|
||||
CFG="${TRIM_PKGETC}/app.env"
|
||||
if [ -f "${CFG}" ]; then
|
||||
while IFS='=' read -r k v; do
|
||||
case "$k" in
|
||||
HY_DB_DIR) DB_DIR="$v" ;;
|
||||
esac
|
||||
done < "${CFG}"
|
||||
fi
|
||||
[ -z "${DB_DIR}" ] && DB_DIR="${TRIM_PKGVAR}/files"
|
||||
|
||||
BAK="${DB_DIR}/.huiyuan-升级备份"
|
||||
mkdir -p "${BAK}" 2>/dev/null
|
||||
|
||||
# 备份配置目录里的 app.env 与密钥证书(若存在)
|
||||
for f in app.env tls.key tls.crt huiyuan_rsa.pem; do
|
||||
if [ -f "${TRIM_PKGETC}/${f}" ]; then
|
||||
cp -f "${TRIM_PKGETC}/${f}" "${BAK}/${f}" 2>/dev/null
|
||||
fi
|
||||
done
|
||||
|
||||
# 备份数据库(小 JSON 文件,整库快照)
|
||||
if [ -f "${DB_DIR}/huiyuan.json" ]; then
|
||||
cp -f "${DB_DIR}/huiyuan.json" "${BAK}/huiyuan.json" 2>/dev/null
|
||||
fi
|
||||
|
||||
echo "$(date '+%Y-%m-%d %H:%M:%S') - 升级前已备份配置与数据库到 ${BAK} (v${TRIM_OLD_APPVER:-?} → v${TRIM_APPVER})" >> "${TRIM_PKGVAR}/app.log" 2>/dev/null
|
||||
|
||||
exit 0
|
||||
Reference in New Issue
Block a user