fix: 变量持久化 heredoc 改用无引号模式
致命 Bug:Step 1.1 的 cat > /tmp/env_vars.sh 使用 << 'VFEOF'
(单引号 heredoc),导致 ${VARIABLE} 全部写为字面量。
后续 source 后所有变量为空字符串。
修复:<< VFEOF → << EOF(无引号),bash 在写入时即展开
变量值为实际字符串(如 'qq-agent' 而非文字 '${NEW_AGENT_ID}')。
This commit is contained in:
@ -125,7 +125,7 @@ print(cfg.get('gateway', {}).get('auth', {}).get('token', ''))
|
||||
" 2>/dev/null)
|
||||
|
||||
# ─── 持久化到文件,供后续步骤使用 ───
|
||||
cat > /tmp/env_vars.sh << 'VFEOF'
|
||||
cat > /tmp/env_vars.sh << EOF
|
||||
NEW_AGENT_ID='${NEW_AGENT_ID}'
|
||||
AGENT_WORKSPACE='${AGENT_WORKSPACE}'
|
||||
SHARED_DIR='${SHARED_DIR}'
|
||||
@ -133,14 +133,13 @@ NAPCAT_HOST='${NAPCAT_HOST}'
|
||||
NAPCAT_API_PORT='${NAPCAT_API_PORT}'
|
||||
QQREBOT_HOST='${QQREBOT_HOST}'
|
||||
GATEWAY_TOKEN='${GATEWAY_TOKEN}'
|
||||
VFEOF
|
||||
EOF
|
||||
|
||||
echo "变量已写入 /tmp/env_vars.sh,后续步骤请先 source 该文件"
|
||||
```
|
||||
|
||||
> ⚠️ 持久化文件 `/tmp/env_vars.sh` 中的 `${}` 使用**单引号 heredoc 包裹**,
|
||||
> 以确保 bash 在当前阶段立即展开(而非写入文字 `${NEW_AGENT_ID}`)。
|
||||
> 后续步骤每次执行 bash 代码块前,应先 `source /tmp/env_vars.sh`。
|
||||
> 持久化文件使用 **无引号 heredoc**(`<< EOF`),bash 在 Step 1.1 执行时即展开 `${}` 变量。
|
||||
> 后续步骤每次执行 bash 代码块前,先 `source /tmp/env_vars.sh` 恢复环境。
|
||||
|
||||
#### 1.2 向用户确认
|
||||
|
||||
|
||||
Reference in New Issue
Block a user