Files
2026-06-30 15:07:31 +08:00

82 lines
2.0 KiB
YAML

name: Release
on:
push:
tags:
- 'v*.*.*' # 推送 vX.X.X 格式的 tag 时触发
permissions:
contents: write
jobs:
build-windows:
name: Build Windows Installer
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
cache: 'npm'
cache-dependency-path: desktop/package-lock.json
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install frontend dependencies
working-directory: frontweb
run: npm ci
- name: Build frontend
working-directory: frontweb
run: npm run build
- name: Install backend dependencies
working-directory: backend-node
env:
NODE_TLS_REJECT_UNAUTHORIZED: '0'
run: npm ci
- name: Install desktop dependencies & rebuild native modules
working-directory: desktop
env:
NODE_TLS_REJECT_UNAUTHORIZED: '0'
run: npm ci
- name: Copy frontend dist
working-directory: desktop
run: node scripts/copy-front.js
- name: Copy backend
working-directory: desktop
run: node scripts/copy-backend.js
# 标准版(含示例数据)
- name: Build Standard Installer
working-directory: desktop
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npx electron-builder --win --publish never
- name: Upload Standard Build Artifacts
uses: actions/upload-artifact@v4
with:
name: windows-release
path: desktop/release/*.exe
retention-days: 7
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
files: desktop/release/*.exe
generate_release_notes: true
draft: true # 先创建草稿,人工审核后手动发布
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}