This commit is contained in:
丹尼尔
2026-03-12 18:42:23 +08:00
parent 66362780a0
commit 8b62c445fc
10 changed files with 4801 additions and 73 deletions

View File

@@ -106,25 +106,37 @@ fi
echo "ngrok 公网地址: $PUBLIC_URL"
# 更新 .env存在 CALLBACK_BASE_URL 则替换,否则追加
# 更新 .env已有非空 CALLBACK_BASE_URL 时默认不覆盖,避免每次重启都要重新设定;传 --update 则强制更新
FORCE_UPDATE=0
for a in "$@"; do
[ "$a" = "--update" ] && FORCE_UPDATE=1
done
ENV_FILE=".env"
if [ ! -f "$ENV_FILE" ]; then
echo "CALLBACK_BASE_URL=$PUBLIC_URL" >> "$ENV_FILE"
echo "已写入 $ENV_FILE: CALLBACK_BASE_URL=$PUBLIC_URL"
else
if grep -q '^CALLBACK_BASE_URL=' "$ENV_FILE" 2>/dev/null; then
if [[ "$(uname)" == "Darwin" ]]; then
sed -i '' "s|^CALLBACK_BASE_URL=.*|CALLBACK_BASE_URL=$PUBLIC_URL|" "$ENV_FILE"
else
sed -i "s|^CALLBACK_BASE_URL=.*|CALLBACK_BASE_URL=$PUBLIC_URL|" "$ENV_FILE"
fi
echo "已更新 $ENV_FILE: CALLBACK_BASE_URL=$PUBLIC_URL"
else
echo "" >> "$ENV_FILE"
echo "# 消息回调ngrok 调通用,由 run-ngrok.sh 自动写入)" >> "$ENV_FILE"
CURRENT_CB=""
[ -f "$ENV_FILE" ] && CURRENT_CB=$(grep -E '^CALLBACK_BASE_URL=' "$ENV_FILE" 2>/dev/null | sed 's/^CALLBACK_BASE_URL=//' | tr -d '\r' | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') || true
if [ "$FORCE_UPDATE" = "1" ] || [ -z "$CURRENT_CB" ]; then
if [ ! -f "$ENV_FILE" ]; then
echo "CALLBACK_BASE_URL=$PUBLIC_URL" >> "$ENV_FILE"
echo "追加 $ENV_FILE: CALLBACK_BASE_URL=$PUBLIC_URL"
echo "写入 $ENV_FILE: CALLBACK_BASE_URL=$PUBLIC_URL"
else
if grep -q '^CALLBACK_BASE_URL=' "$ENV_FILE" 2>/dev/null; then
if [[ "$(uname)" == "Darwin" ]]; then
sed -i '' "s|^CALLBACK_BASE_URL=.*|CALLBACK_BASE_URL=$PUBLIC_URL|" "$ENV_FILE"
else
sed -i "s|^CALLBACK_BASE_URL=.*|CALLBACK_BASE_URL=$PUBLIC_URL|" "$ENV_FILE"
fi
echo "已更新 $ENV_FILE: CALLBACK_BASE_URL=$PUBLIC_URL"
else
echo "" >> "$ENV_FILE"
echo "# 消息回调ngrok 调通用,由 run-ngrok.sh 自动写入)" >> "$ENV_FILE"
echo "CALLBACK_BASE_URL=$PUBLIC_URL" >> "$ENV_FILE"
echo "已追加 $ENV_FILE: CALLBACK_BASE_URL=$PUBLIC_URL"
fi
fi
else
echo "已保留现有 CALLBACK_BASE_URL=$CURRENT_CB(不覆盖)。若 ngrok 已换新地址,请执行: ./run-ngrok.sh --update"
fi
echo ""