Skip to content

ci: 前端构建 + 测试 workflow #38

ci: 前端构建 + 测试 workflow

ci: 前端构建 + 测试 workflow #38

Workflow file for this run

name: Frontend CI
permissions:
contents: read
on:
pull_request:
paths:
- "frontend/**"
- ".github/workflows/frontend-ci.yml"
push:
branches: [master, develop]
paths:
- "frontend/**"
- ".github/workflows/frontend-ci.yml"
jobs:
test:
runs-on: ubuntu-latest
defaults:
run:
working-directory: frontend
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
run: npm ci
- name: Run tests with coverage
run: npm run test:coverage
- name: Upload coverage report
if: always()
uses: actions/upload-artifact@v4
with:
name: frontend-coverage
path: frontend/coverage/
build:
runs-on: ubuntu-latest
needs: test
defaults:
run:
working-directory: frontend
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
run: npm ci
- name: Type check
run: npx vue-tsc --noEmit
- name: Build
run: npm run build