🧪 Secrets连通测试workflow·验证所有密钥+DeepSeek+千问+COS+新加坡SSH
This commit is contained in:
parent
1cc7f86af7
commit
0fc34c9c04
109
.forgejo/workflows/test-secrets.yaml
Normal file
109
.forgejo/workflows/test-secrets.yaml
Normal 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 "═════════════════════════"
|
||||
109
.gitea/workflows/test-secrets.yaml
Normal file
109
.gitea/workflows/test-secrets.yaml
Normal 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 "═════════════════════════"
|
||||
Loading…
x
Reference in New Issue
Block a user