# 光湖 · Secrets连通测试 name: Secrets测试 on: workflow_dispatch: push: paths: - '.gitea/workflows/test-secrets.yaml' - '.forgejo/workflows/test-secrets.yaml' jobs: test-secrets: runs-on: ubuntu steps: - name: 测试密钥可用性 env: DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }} QIANWEN_API_KEY: ${{ secrets.QIANWEN_API_KEY }} ZY_REPO_TOKEN: ${{ secrets.ZY_REPO_TOKEN }} COS_SECRET_ID: ${{ secrets.COS_SECRET_ID }} COS_SECRET_KEY: ${{ secrets.COS_SECRET_KEY }} SG_BRAIN_HOST: ${{ secrets.SG_BRAIN_HOST }} SG_BRAIN_USER: ${{ secrets.SG_BRAIN_USER }} SG_BRAIN_KEY: ${{ secrets.SG_BRAIN_KEY }} run: | echo "═══ Forgejo Secrets 连通测试 ═══" echo "" # 检查每个secret是否有值(不显示值本身) check_secret() { local name=$1 local val=$2 if [[ -n "$val" && "$val" != "" ]]; then local masked="${val:0:4}****${val: -4}" echo " ✅ $name = $masked (长度: ${#val})" else echo " ❌ $name = (空)" fi } check_secret "DEEPSEEK_API_KEY" "$DEEPSEEK_API_KEY" check_secret "QIANWEN_API_KEY" "$QIANWEN_API_KEY" check_secret "ZY_REPO_TOKEN" "$ZY_REPO_TOKEN" check_secret "COS_SECRET_ID" "$COS_SECRET_ID" check_secret "COS_SECRET_KEY" "$COS_SECRET_KEY" check_secret "SG_BRAIN_HOST" "$SG_BRAIN_HOST" check_secret "SG_BRAIN_USER" "$SG_BRAIN_USER" check_secret "SG_BRAIN_KEY" "$SG_BRAIN_KEY" echo "" echo "═══ API连通测试 ═══" # DeepSeek if [[ -n "$DEEPSEEK_API_KEY" ]]; then echo -n " DeepSeek: " RESP=$(curl -s -X POST https://api.deepseek.com/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $DEEPSEEK_API_KEY" \ -d '{"model":"deepseek-chat","messages":[{"role":"user","content":"说一个字"}],"max_tokens":10}' \ --connect-timeout 10 2>/dev/null) if echo "$RESP" | grep -q '"choices"'; then echo "✅ 可用" else echo "❌ 不可用: $(echo $RESP | head -c 100)" fi fi # 通义千问 if [[ -n "$QIANWEN_API_KEY" ]]; then echo -n " 通义千问: " RESP=$(curl -s -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $QIANWEN_API_KEY" \ -d '{"model":"qwen-plus","messages":[{"role":"user","content":"说一个字"}],"max_tokens":10}' \ --connect-timeout 10 2>/dev/null) if echo "$RESP" | grep -q '"choices"'; then echo "✅ 可用" else echo "❌ 不可用: $(echo $RESP | head -c 100)" fi fi # COS if [[ -n "$COS_SECRET_ID" && -n "$COS_SECRET_KEY" ]]; then echo -n " COS存储桶: " RESP=$(curl -s -o /dev/null -w "%{http_code}" \ "https://sy-finetune-corpus-1317346199.cos.ap-guangzhou.myqcloud.com/" \ -H "Authorization: COS $COS_SECRET_ID:$COS_SECRET_KEY" \ --connect-timeout 10 2>/dev/null) echo "HTTP $RESP" fi # 新加坡大脑服务器 if [[ -n "$SG_BRAIN_HOST" ]]; then echo -n " 新加坡大脑: " RESP=$(curl -s -o /dev/null -w "%{http_code}" \ "http://$SG_BRAIN_HOST:3000/" \ --connect-timeout 5 2>/dev/null) if [[ "$RESP" == "000" ]]; then echo "不可达 (可能需要SSH密钥)" else echo "HTTP $RESP" fi fi echo "" echo "═════════════════════════" echo "测试完成" echo "═════════════════════════"