Files
dingtalk-bot/.gitea/workflows/ci.yml
ren 343e0af9c5
Some checks failed
CI / 测试 (push) Failing after 12s
fix: 修复构建脚本依赖缓存问题
2025-10-22 10:52:18 +08:00

92 lines
2.5 KiB
YAML

name: CI
on:
push:
branches: [dev, release, master]
pull_request:
branches: [dev, release, master]
jobs:
test:
runs-on: ubuntu-latest
name: 测试
steps:
- name: 准备 | 签出代码
uses: actions/checkout@v4
- name: 准备 | 配置开发环境
uses: actions/setup-node@v4
with:
node-version: "20"
- name: 准备 | 获取包管理器版本
run: |
PNPM_VERSION=$(grep -o '"packageManager": "[^"]*"' package.json | cut -d'@' -f2 | tr -d '"')
echo "PNPM_VERSION=$PNPM_VERSION" >> $GITHUB_ENV
echo "✅ 包管理器版本为 pnpm@$PNPM_VERSION"
- name: 准备 | 配置全局缓存
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-npm-pnpm-${{ env.PNPM_VERSION }}
restore-keys: |
${{ runner.os }}-npm-pnpm-
- name: 准备 | 安装包管理器
run: |
npm install -g pnpm@${{ env.PNPM_VERSION }}
pnpm --version
echo "✅ 包管理器安装成功"
- name: 准备 | 获取依赖哈希
id: files-hash
uses: actions/files-hash@v0.1
with:
files: "**/pnpm-lock.yaml"
- name: 准备 | 获取依赖目录
id: dependencies
run: |
DEPEND=$(pnpm store path)
echo "DEPEND=$DEPEND" >> $GITEA_OUTPUT
echo "✅ 依赖目录: $DEPEND"
- name: 准备 | 配置依赖缓存
uses: actions/cache@v3
with:
path: ${{ steps.dependencies.outputs.DEPEND }}
key: ${{ runner.os }}-pnpm-store-${{ steps.files-hash.outputs.hash }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: 准备 | 安装依赖
run: |
pnpm install --frozen-lockfile
echo "✅ 依赖安装完成"
- name: 测试 | 执行语法检查
run: |
echo "🔍 执行 JavaScript 语法检查..."
node -c src/index.js
echo "✅ 语法检查通过"
- name: 测试 | 执行 Lint 检查
run: |
echo "🔍 执行 Lint 检查..."
pnpm run lint
echo "✅ Lint 检查通过"
- name: 测试 | 执行格式化检查
run: |
echo "🔍 执行格式化检查..."
pnpm run format:check
echo "✅ 格式化检查通过"
- name: 测试 | 执行测试
run: |
echo "🧪 执行测试..."
pnpm run test
echo "✅ 测试通过"