🧪 Secrets连通测试workflow·验证所有密钥+DeepSeek+千问+COS+新加坡SSH

This commit is contained in:
铸渊 (ICE-GL-ZY001) 2026-05-12 09:23:10 +00:00
parent 1cc7f86af7
commit 0fc34c9c04
2 changed files with 218 additions and 0 deletions

View File

@ -0,0 +1,109 @@
# 光湖 · 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 "═════════════════════════"

View File

@ -0,0 +1,109 @@
# 光湖 · 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 "═════════════════════════"