Commit da4f564ee456039df7a63267601fd56412422af1
1 parent
08ccdb1c
fix(infra): scripts/test.sh source .env.local for JAVA_HOME and EXTRA_PATH
让 git pre-push 钩子触发的子 shell 也能拿到正确的 JDK21 路径与 mysql-client 路径,避免在 PATH 短的环境下编译/连库失败。
Showing
1 changed file
with
13 additions
and
0 deletions
scripts/test.sh
| @@ -8,6 +8,19 @@ set -euo pipefail | @@ -8,6 +8,19 @@ set -euo pipefail | ||
| 8 | PROJECT_ROOT="$(cd "$(dirname "$0")/.." && pwd)" | 8 | PROJECT_ROOT="$(cd "$(dirname "$0")/.." && pwd)" |
| 9 | cd "$PROJECT_ROOT" | 9 | cd "$PROJECT_ROOT" |
| 10 | 10 | ||
| 11 | +# 让 .env.local 注入 JAVA_HOME / DB_* / JWT_SECRET 等运行期变量 | ||
| 12 | +# 由 .githooks/pre-push 触发本脚本时也能拿到 | ||
| 13 | +ENV_FILE="${PROJECT_ROOT}/.env.local" | ||
| 14 | +if [ -f "$ENV_FILE" ]; then | ||
| 15 | + set -a; . "$ENV_FILE"; set +a | ||
| 16 | +fi | ||
| 17 | +if [ -n "${JAVA_HOME:-}" ] && [ -d "$JAVA_HOME" ]; then | ||
| 18 | + export PATH="$JAVA_HOME/bin:$PATH" | ||
| 19 | +fi | ||
| 20 | +if [ -n "${EXTRA_PATH:-}" ]; then | ||
| 21 | + export PATH="$EXTRA_PATH:$PATH" | ||
| 22 | +fi | ||
| 23 | + | ||
| 11 | # Stack detection (runtime, mode-agnostic) | 24 | # Stack detection (runtime, mode-agnostic) |
| 12 | HAS_BACKEND=0; [ -d backend ] && HAS_BACKEND=1 | 25 | HAS_BACKEND=0; [ -d backend ] && HAS_BACKEND=1 |
| 13 | HAS_FRONTEND=0; [ -d frontend ] && HAS_FRONTEND=1 | 26 | HAS_FRONTEND=0; [ -d frontend ] && HAS_FRONTEND=1 |