fix(deploy): .env 中带空格的值未加引号导致 install.sh 以 127 失败
现象: ./deploy/.env: line 53: Miku.pmx: command not found [install] 第 53 行执行失败(退出码 127) 根因:deploy/.env.example 的 MODEL_CONVERT_PMX=Hatsune Miku.pmx 值含空格 却没加引号,install.sh 用 `set -a; . deploy/.env` 载入时被切成 「赋值 + 命令」,Miku.pmx 被当成命令执行。 修复: 1. 模板改为 MODEL_CONVERT_PMX="Hatsune Miku.pmx"(占位符值同样加引号); 2. 新增 deploy/env-lib.sh:.env 语法预检,install.sh / ctl.sh 在 source 之前检查,报错给出「哪一行 / 原文 / 改法」, 与反引号建议单引号; 3. install.sh 的 ERR trap 补上出错文件名(lineno 属于被 source 的 .env, 只报行号无法定位); 4. 新增 test/env-file.spec.ts 12 项回归测试,锁住「模板可被 shell 原样载入」; 5. 版本升到 0.2.1,README(.md/.txt)/DSH.md 补 .env 写法约定、FAQ 与测试数量。
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
# web-server/ NestJS 源码 + 构建产物
|
||||
# admin/ React 管理端构建产物
|
||||
# deploy/ install.sh / ctl.sh / uninstall.sh / .env.example
|
||||
# env-lib.sh (.env 语法预检) / init-env.sh (.env 引导)
|
||||
# systemd|openrc|initd / proxy(反代说明文档,仅文档不部署)
|
||||
# contracts/ 当前版本契约快照
|
||||
# THIRD_PARTY.md 开源项目声明
|
||||
@@ -130,6 +131,7 @@ for required in \
|
||||
"opendance-web-v${VERSION}/web-server/dist/models/vrm-writer.js" \
|
||||
"opendance-web-v${VERSION}/web-server/dist/models/gltf-packer.js" \
|
||||
"opendance-web-v${VERSION}/deploy/init-env.sh" \
|
||||
"opendance-web-v${VERSION}/deploy/env-lib.sh" \
|
||||
"opendance-web-v${VERSION}/deploy/proxy/README.md" \
|
||||
"opendance-web-v${VERSION}/deploy/proxy/nginx.conf.example" \
|
||||
"opendance-web-v${VERSION}/deploy/proxy/web.config.example" \
|
||||
|
||||
Reference in New Issue
Block a user