Skip to content

refactor(archive): drop entry-count limit on all platforms #328

refactor(archive): drop entry-count limit on all platforms

refactor(archive): drop entry-count limit on all platforms #328

Workflow file for this run

name: PR 检查
on:
pull_request:
branches:
- main
- master
- dev
push:
branches:
- main
- master
- dev
permissions:
contents: read
jobs:
test-build:
strategy:
fail-fast: false
matrix:
include:
- platform: windows
arch: x86_64
runner: windows-latest
- platform: macos
arch: x86_64
runner: macos-15-intel
- platform: macos
arch: aarch64
runner: macos-latest
- platform: linux
arch: x86_64
runner: ubuntu-22.04
runs-on: ${{ matrix.runner }}
steps:
- name: 检出代码
uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
- name: 安装 Rust 稳定版
uses: dtolnay/rust-toolchain@4cda84d5c5c54efe2404f9d843567869ab1699d4 # stable
- name: 初始化前端工具链
uses: ./.github/actions/setup-frontend
- name: 核心类型检查
if: matrix.platform == 'linux'
run: |
pnpm run build:packages
pnpm run typecheck:packages
./node_modules/.bin/vue-tsc --noEmit
- name: 代码规范检查
if: matrix.platform == 'linux'
run: pnpm run lint
- name: 核心回归测试
if: matrix.platform == 'linux'
run: pnpm test --pool=threads --maxWorkers=1
- name: VS Code 扩展构建检查
if: matrix.platform == 'linux'
run: |
npm --prefix src-vscode ci
pnpm run build:vscode
npm --prefix src-vscode run compile
- name: Rust 缓存
uses: swatinem/rust-cache@42dc69e1aa15d09112580998cf2ef0119e2e91ae # v2
with:
workspaces: './src-tauri -> target'
- name: 安装 Ubuntu 依赖
if: matrix.platform == 'linux'
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.1-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev patchelf libssl-dev
- name: Rust 单元测试
if: matrix.platform == 'linux'
run: cargo test --manifest-path src-tauri/Cargo.toml
- name: Rust 依赖漏洞审计
if: matrix.platform == 'linux'
run: |
cargo install cargo-audit --version 0.22.2 --locked
cargo audit --file src-tauri/Cargo.lock
- name: 类型检查
run: pnpm run build
- name: Tauri 构建测试
run: pnpm run tauri build
- name: 上传构建产物
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: ${{ matrix.platform }}-${{ matrix.arch }}-build
path: src-tauri/target/release/bundle/
if-no-files-found: warn
retention-days: 7