Update run.sh
Browse files
run.sh
CHANGED
|
@@ -1,41 +1,60 @@
|
|
| 1 |
#!/bin/bash
|
| 2 |
|
| 3 |
-
#
|
| 4 |
CONFIG_DIR="$HOME/.openclaw"
|
| 5 |
CONFIG_FILE="$CONFIG_DIR/openclaw.json"
|
| 6 |
|
| 7 |
-
# 确保目录存在
|
| 8 |
mkdir -p "$CONFIG_DIR"
|
| 9 |
|
| 10 |
echo "=== OpenClaw 汉化版启动脚本 ==="
|
| 11 |
-
echo "配置目录: $CONFIG_DIR"
|
| 12 |
-
|
| 13 |
-
# --- 1. 下载配置文件 ---
|
| 14 |
-
echo "正在从 WebDAV 获取配置文件..."
|
| 15 |
|
|
|
|
| 16 |
if [ -z "$WEBDAV_URL" ]; then
|
| 17 |
echo "错误: 未设置 WEBDAV_URL 环境变量"
|
| 18 |
-
echo "请在 Hugging Face Space 设置中添加 WEBDAV_URL"
|
| 19 |
exit 1
|
| 20 |
fi
|
| 21 |
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
curl -s -L --fail -u "$WEBDAV_USER:$WEBDAV_PASSWORD" "$WEBDAV_URL" -o "$CONFIG_FILE"
|
| 25 |
else
|
| 26 |
-
|
|
|
|
| 27 |
fi
|
| 28 |
|
| 29 |
-
|
| 30 |
-
|
|
|
|
| 31 |
else
|
| 32 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
exit 1
|
| 34 |
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
|
| 36 |
-
|
| 37 |
-
|
| 38 |
|
| 39 |
-
|
| 40 |
-
#
|
| 41 |
-
|
|
|
|
| 1 |
#!/bin/bash
|
| 2 |
|
| 3 |
+
# OpenClaw 默认路径
|
| 4 |
CONFIG_DIR="$HOME/.openclaw"
|
| 5 |
CONFIG_FILE="$CONFIG_DIR/openclaw.json"
|
| 6 |
|
|
|
|
| 7 |
mkdir -p "$CONFIG_DIR"
|
| 8 |
|
| 9 |
echo "=== OpenClaw 汉化版启动脚本 ==="
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
+
# 1. 检查环境变量并处理下载 (保持之前的逻辑)
|
| 12 |
if [ -z "$WEBDAV_URL" ]; then
|
| 13 |
echo "错误: 未设置 WEBDAV_URL 环境变量"
|
|
|
|
| 14 |
exit 1
|
| 15 |
fi
|
| 16 |
|
| 17 |
+
if [[ "$WEBDAV_URL" == *.json ]]; then
|
| 18 |
+
FINAL_URL="$WEBDAV_URL"
|
|
|
|
| 19 |
else
|
| 20 |
+
CLEAN_URL="${WEBDAV_URL%/}"
|
| 21 |
+
FINAL_URL="$CLEAN_URL/openclaw.json"
|
| 22 |
fi
|
| 23 |
|
| 24 |
+
echo "正在从 WebDAV 下载配置: $FINAL_URL"
|
| 25 |
+
if [ -n "$WEBDAV_USER" ] && [ -n "$WEBDAV_PASSWORD" ]; then
|
| 26 |
+
curl -s -L --fail -u "$WEBDAV_USER:$WEBDAV_PASSWORD" "$FINAL_URL" -o "$CONFIG_FILE"
|
| 27 |
else
|
| 28 |
+
curl -s -L --fail "$FINAL_URL" -o "$CONFIG_FILE"
|
| 29 |
+
fi
|
| 30 |
+
|
| 31 |
+
if [ ! -f "$CONFIG_FILE" ]; then
|
| 32 |
+
echo "❌ 错误: 无法下载配置文件"
|
| 33 |
exit 1
|
| 34 |
fi
|
| 35 |
+
echo "✅ 配置文件下载成功"
|
| 36 |
+
|
| 37 |
+
# 2. 运行系统诊断 (可选,能帮你检查环境是否正常)
|
| 38 |
+
echo "--- 系统诊断 (openclaw doctor) ---"
|
| 39 |
+
openclaw doctor
|
| 40 |
+
|
| 41 |
+
# 3. 启动 OpenClaw
|
| 42 |
+
echo "--- 正在启动 OpenClaw ---"
|
| 43 |
+
|
| 44 |
+
# 在后台启动 OpenClaw 主程序
|
| 45 |
+
# 我们直接运行 openclaw,它会自动加载默认路径的配置
|
| 46 |
+
openclaw &
|
| 47 |
+
|
| 48 |
+
# 获取刚才启动进程的 PID
|
| 49 |
+
MAIN_PID=$!
|
| 50 |
+
|
| 51 |
+
# 4. 等待并显示状态
|
| 52 |
+
echo "等待网关启动 (15秒)..."
|
| 53 |
+
sleep 15
|
| 54 |
|
| 55 |
+
echo "--- OpenClaw 运行状态 ---"
|
| 56 |
+
openclaw gateway status
|
| 57 |
|
| 58 |
+
echo "--- 实时日志输出 ---"
|
| 59 |
+
# 使用 wait 保持容器运行,并持续捕获后台进程的输出
|
| 60 |
+
wait $MAIN_PID
|