Files
rui-docs/.gitea/workflows/frontend-build.yml
T
vifo 6d11711244 ci: 添加前端构建工作流
- 配置 Admin UI 构建
- 配置收银移动端构建
- 配置顾客移动端构建
- 添加 ESLint 和类型检查
2026-06-04 06:13:13 +08:00

146 lines
3.2 KiB
YAML

name: 前端构建与检查
on:
push:
branches: [main, develop, 'feature/**', 'feat/**']
paths-ignore:
- '**.md'
- 'docs/**'
pull_request:
branches: [main, develop]
paths-ignore:
- '**.md'
- 'docs/**'
jobs:
lint-and-type-check:
name: 代码检查
runs-on: ubuntu-latest
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 安装 Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'pnpm'
- name: 安装 pnpm
uses: pnpm/action-setup@v2
with:
version: 8
run_install: false
- name: 安装依赖
run: pnpm install --frozen-lockfile
- name: 运行 ESLint
run: pnpm lint || true
- name: 运行类型检查
run: pnpm type-check || true
build-admin-ui:
name: 构建 Admin UI
runs-on: ubuntu-latest
needs: lint-and-type-check
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 安装 Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'pnpm'
- name: 安装 pnpm
uses: pnpm/action-setup@v2
with:
version: 8
run_install: false
- name: 安装依赖
run: pnpm install --frozen-lockfile
- name: 构建 Admin UI
run: pnpm build:admin
- name: 上传构建产物
uses: actions/upload-artifact@v4
with:
name: admin-ui-dist
path: admin-ui/dist
retention-days: 7
build-cashier-mobile:
name: 构建收银移动端
runs-on: ubuntu-latest
needs: lint-and-type-check
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 安装 Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'pnpm'
- name: 安装 pnpm
uses: pnpm/action-setup@v2
with:
version: 8
run_install: false
- name: 安装依赖
run: pnpm install --frozen-lockfile
- name: 构建收银移动端
run: pnpm build:cashier
- name: 上传构建产物
uses: actions/upload-artifact@v4
with:
name: cashier-mobile-dist
path: cashier-mobile/dist
retention-days: 7
build-customer-mobile:
name: 构建顾客移动端
runs-on: ubuntu-latest
needs: lint-and-type-check
steps:
- name: 检出代码
uses: actions/checkout@v4
- name: 安装 Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'pnpm'
- name: 安装 pnpm
uses: pnpm/action-setup@v2
with:
version: 8
run_install: false
- name: 安装依赖
run: pnpm install --frozen-lockfile
- name: 构建顾客移动端
run: pnpm build:customer
- name: 上传构建产物
uses: actions/upload-artifact@v4
with:
name: customer-mobile-dist
path: customer-mobile/dist
retention-days: 7