Skip to content

docs: 添加PR创建指南和重构总结文档 #125

docs: 添加PR创建指南和重构总结文档

docs: 添加PR创建指南和重构总结文档 #125

Workflow file for this run

# Blade CI 测试工作流
name: Blade CI
on:
push:
branches: [ main, develop, feature/** ]
pull_request:
branches: [ main, develop ]
workflow_dispatch:
jobs:
test:
name: Test Suite
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.x, 18.x, 20.x]
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Setup pnpm
uses: pnpm/action-setup@v3
with:
version: 8
- name: Install Dependencies
run: pnpm install
- name: Run Type Check
run: pnpm run type-check
- name: Run Linter
run: pnpm run lint
- name: Run Unit Tests
run: pnpm run test:unit --coverage
- name: Run Integration Tests
run: pnpm run test:integration --coverage
- name: Run E2E Tests
run: pnpm run test:e2e
- name: Upload Coverage to Codecov
uses: codecov/codecov-action@v4
with:
file: ./coverage/lcov.info
flags: unittests
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
quality:
name: Code Quality
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '18.x'
cache: 'pnpm'
- name: Setup pnpm
uses: pnpm/action-setup@v3
with:
version: 8
- name: Install Dependencies
run: pnpm install
- name: Check Code Format
run: pnpm run format:check
- name: Run Security Audit
run: pnpm audit || true
- name: Build Project
run: pnpm run build
# 仅在主分支上运行发布检查
release-check:
name: Release Check
runs-on: ubuntu-latest
needs: [test, quality]
if: github.ref == 'refs/heads/main'
steps:
- name: Check All Tests Passed
if: needs.test.result != 'success' || needs.quality.result != 'success'
run: |
echo "❌ Some checks failed. Cannot proceed with release."
exit 1
- name: All Checks Passed
run: echo "✅ All checks passed. Ready for release."