# 光湖 · 最终Secrets测试 name: Secrets最终测试 on: push: paths: - '.gitea/workflows/final-secrets-test.yaml' jobs: test: runs-on: ubuntu steps: - name: 检查secrets 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 "=== SECRETS CHECK ===" for key in DEEPSEEK_API_KEY QIANWEN_API_KEY ZY_REPO_TOKEN COS_SECRET_ID COS_SECRET_KEY SG_BRAIN_HOST SG_BRAIN_USER SG_BRAIN_KEY; do eval val=\$$key if [ -z "$val" ]; then echo "EMPTY: $key" else echo "OK: $key (len=${#val})" fi done - name: 测试DeepSeek env: DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }} run: | if [ -n "$DEEPSEEK_API_KEY" ]; then 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":"1+1=?"}],"max_tokens":10}' \ --connect-timeout 10 | python3 -c " import json,sys try: d=json.load(sys.stdin) if 'choices' in d: print('DeepSeek: OK -', d['choices'][0]['message']['content']) else: print('DeepSeek: FAILED -', d.get('error',{}).get('message','unknown')) except Exception as e: print('DeepSeek: ERROR -', str(e)) " else echo "DeepSeek: NO KEY" fi - name: 测试通义千问 env: QIANWEN_API_KEY: ${{ secrets.QIANWEN_API_KEY }} run: | if [ -n "$QIANWEN_API_KEY" ]; then 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":"1+1=?"}],"max_tokens":10}' \ --connect-timeout 10 | python3 -c " import json,sys try: d=json.load(sys.stdin) if 'choices' in d: print('Qianwen: OK -', d['choices'][0]['message']['content']) else: print('Qianwen: FAILED -', d.get('error',{}).get('message','unknown')) except Exception as e: print('Qianwen: ERROR -', str(e)) " else echo "Qianwen: NO KEY" fi - 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: | mkdir -p /data/guanghulab/.runtime echo '{"timestamp":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'",' > /data/guanghulab/.runtime/secrets-result.json for key in DEEPSEEK_API_KEY QIANWEN_API_KEY ZY_REPO_TOKEN COS_SECRET_ID COS_SECRET_KEY SG_BRAIN_HOST SG_BRAIN_USER SG_BRAIN_KEY; do eval val=\$$key if [ -z "$val" ]; then echo "\"$key\":\"EMPTY\"," >> /data/guanghulab/.runtime/secrets-result.json else echo "\"$key\":\"OK_LEN_'${#val}'\"," >> /data/guanghulab/.runtime/secrets-result.json fi done echo '"done":true}' >> /data/guanghulab/.runtime/secrets-result.json cat /data/guanghulab/.runtime/secrets-result.json