Files
novalon-website/diagnose-webhook-detail.sh
T
张翔 dd2a0999bb
ci/woodpecker/push/woodpecker Pipeline failed
fix: 修复企业微信通知环境变量展开问题
- 使用 PAYLOAD=$(cat <<ENDPAYLOAD) 替代 cat > file <<EOF
- 确保环境变量在 heredoc 中正确展开
- 添加测试脚本验证环境变量展开
- 修复构建详情链接和消息内容缺失问题
2026-03-28 22:48:22 +08:00

38 lines
1.2 KiB
Bash

#!/bin/bash
echo "=== Woodpecker CI Webhook 诊断 ==="
echo ""
echo "1. 检查 Forgejo Webhook 配置..."
echo " Webhook URL: https://ci.f.novalon.cn/api/hook?access_token=..."
echo " Content Type: application/json"
echo " Trigger: push"
echo ""
echo "2. 检查 Woodpecker CI 期望的 Header..."
echo " X-Gitea-Event: push"
echo " X-Gitea-Delivery: <uuid>"
echo " X-Gitea-Signature: <signature>"
echo ""
echo "3. 检查 Nginx 配置..."
docker exec novalon-nginx cat /etc/nginx/conf.d/ci.f.novalon.cn.conf | grep -A 15 "location /api/"
echo ""
echo "4. 测试 Webhook 接收..."
echo " 发送测试 webhook..."
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Gitea-Event: push" \
-H "X-Gitea-Delivery: test-123" \
-d '{"ref":"refs/heads/test"}' \
"https://ci.f.novalon.cn/api/hook?access_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmb3JnZS1pZCI6IjEiLCJyZXBvLWZvcmdlLXJlbW90ZS1pZCI6IjEiLCJ0eXBlIjoiaG9vayJ9.gu3mi1VAQfGB3d9HcuwWmMAcf-0BmmvQyGjqdiC20dA" \
-v 2>&1 | grep -E "(< HTTP|X-Gitea|hook)"
echo ""
echo "5. 检查 Woodpecker CI 日志..."
docker logs woodpecker-server --since 10s 2>&1 | grep -E "(hook|event|push)"
echo ""
echo "=== 诊断完成 ==="