2022-08-31 16:09:22 +08:00

117 lines
2.0 KiB
YAML

name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
VITEST_SEGFAULT_RETRY: 3
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install pnpm
uses: pnpm/action-setup@v2
- name: Set node
uses: actions/setup-node@v3
with:
node-version: 16.x
- name: Install
run: pnpm i
- name: Lint
run: pnpm run lint
typecheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install pnpm
uses: pnpm/action-setup@v2
- name: Set node
uses: actions/setup-node@v3
with:
node-version: 16.x
- name: Install
run: pnpm i
- name: Build
run: pnpm run build
- name: Typecheck
run: pnpm run typecheck
test:
runs-on: ${{ matrix.os }}
timeout-minutes: 20
strategy:
matrix:
os: [ubuntu-latest]
node_version: [14, 16]
include:
- os: macos-latest
node_version: 16
- os: windows-latest
node_version: 16
fail-fast: false
steps:
- uses: actions/checkout@v3
- name: Install pnpm
uses: pnpm/action-setup@v2
- name: Set node version to ${{ matrix.node_version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node_version }}
- name: Install
run: pnpm i
- name: Build
run: pnpm run build
- name: Test
run: pnpm run test:ci
- name: Test Single Thread
run: pnpm run test:ci:single-thread
test-ui:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- name: Install pnpm
uses: pnpm/action-setup@v2
- name: Set node
uses: actions/setup-node@v3
with:
node-version: 16.16
- name: Install
run: pnpm i
- name: Test UI
run: pnpm run ui:test