#!/usr/bin/env bash # 验收 Higress 总入口(llm / xf / dify-host) set -euo pipefail GW="${HIGRESS_BASE:-http://127.0.0.1:18080}" LITELLM_KEY="${LITELLM_MASTER_KEY:-sk-litellm-bocheng-207}" XF_KEY="${XF_KEY:-xf-K8H3LiS27H4188XdOyWJj74MWMOlIR9tZbiybDbxbSas7eAI}" DIFY_HOST="${DIFY_HOST:-dify.ai.local}" fail=0 echo "[1] /llm/v1/models" if curl -sf -m 20 "$GW/llm/v1/models" -H "Authorization: Bearer $LITELLM_KEY" | grep -q qwen; then echo " OK" else echo " FAIL"; fail=1 fi echo "[2] /xf/v1/models" if curl -sf -m 20 "$GW/xf/v1/models" -H "Authorization: Bearer $XF_KEY" | grep -q bge; then echo " OK" else echo " FAIL"; fail=1 fi echo "[3] Host $DIFY_HOST → Dify" code=$(curl -sS -m 20 -o /dev/null -w "%{http_code}" -H "Host: $DIFY_HOST" "$GW/") if [ "$code" = "200" ] || [ "$code" = "302" ] || [ "$code" = "307" ] || [ "$code" = "301" ]; then echo " OK http=$code" else echo " FAIL http=$code"; fail=1 fi echo "[4] 直连仍可用(对照)" curl -sf -m 10 http://127.0.0.1:4000/health/liveliness >/dev/null && echo " LiteLLM OK" || { echo " LiteLLM FAIL"; fail=1; } if [ "$fail" -ne 0 ]; then echo "[FAIL] 验收未全部通过" exit 1 fi echo "[PASS] Higress 总入口验收通过"