fix: 修复企业微信通知语法错误并添加缓存支持
ci/woodpecker/push/woodpecker Pipeline failed

- 修复企业微信通知的shell语法错误(变量替换问题)
- 添加npm缓存支持,加速CI构建
- 为lint、type-check、unit-tests步骤添加缓存volumes
- 优化通知格式,正确显示构建状态和时间戳
This commit is contained in:
张翔
2026-03-28 18:24:34 +08:00
parent 6a035977f9
commit aed595e2fe
+18 -6
View File
@@ -38,6 +38,8 @@
variables:
- &node_image node:20-alpine
- &docker_image docker:24-cli
- &npm_cache /root/.npm
- &node_modules_cache /woodpecker/src/node_modules
# ============================================
# 阶段1: 代码质量检查
@@ -50,6 +52,9 @@ steps:
commands:
- npm ci
- npm run lint
volumes:
- /tmp/npm-cache:/root/.npm
- /tmp/node-modules-cache:/woodpecker/src/node_modules
when:
event:
- push
@@ -67,6 +72,9 @@ steps:
commands:
- npm ci
- npm run type-check
volumes:
- /tmp/npm-cache:/root/.npm
- /tmp/node-modules-cache:/woodpecker/src/node_modules
when:
event:
- push
@@ -103,12 +111,14 @@ steps:
commands:
- npm ci
- npm run test:coverage:check
volumes:
- /tmp/npm-cache:/root/.npm
- /tmp/node-modules-cache:/woodpecker/src/node_modules
when:
event:
- push
- pull_request
branch:
- feature/**
- dev
- release
- release/**
@@ -427,14 +437,16 @@ steps:
STATUS_COLOR="warning"
fi
TIMESTAMP=$(date "+%Y-%m-%d %H:%M:%S")
curl -X POST "$WECHAT_WEBHOOK" \
-H 'Content-Type: application/json' \
-d '{
"msgtype": "markdown",
"markdown": {
"content": "'"## 🚀 Novalon Website 部署通知\n\n> **构建状态**: <font color=\"'"${STATUS_COLOR}"'\">'"${STATUS_TEXT}"'</font>\n\n**项目信息**\n> 分支: `'"${BRANCH}"'`\n> 提交: `'"${COMMIT}"'`\n> 作者: '"${AUTHOR}"'\n\n**提交信息**\n> '"${MESSAGE}"'\n\n**操作**\n> [查看构建详情]('"${PIPELINE_URL}"')\n\n---\n> 时间: $(date "+%Y-%m-%d %H:%M:%S")\n> Pipeline #${PIPELINE_NUMBER}"'"
-d "{
\"msgtype\": \"markdown\",
\"markdown\": {
\"content\": \"## 🚀 Novalon Website 部署通知\\n\\n> **构建状态**: <font color=\\\"${STATUS_COLOR}\\\">${STATUS_TEXT}</font>\\n\\n**项目信息**\\n> 分支: \`${BRANCH}\`\\n> 提交: \`${COMMIT}\`\\n> 作者: ${AUTHOR}\\n\\n**提交信息**\\n> ${MESSAGE}\\n\\n**操作**\\n> [查看构建详情](${PIPELINE_URL})\\n\\n---\\n> 时间: ${TIMESTAMP}\\n> Pipeline #${PIPELINE_NUMBER}\"
}
}'
}"
when:
event:
- push