48 lines
1.3 KiB
YAML
48 lines
1.3 KiB
YAML
name: Tests
|
|
|
|
on:
|
|
# Trigger the workflow on push or pull request,
|
|
# but only for the main branch
|
|
push:
|
|
branches:
|
|
- main # Trigger on push events to the main branch
|
|
- beta # Trigger on push events to the beta branch
|
|
pull_request:
|
|
branches:
|
|
- main # Trigger on pull request events targeting the main branch
|
|
- beta # Trigger on pull request events targeting the beta branch
|
|
merge_group:
|
|
types: [checks_requested]
|
|
|
|
jobs:
|
|
pre-test:
|
|
name: Run Pre-test
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Check out Git repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: 'recursive'
|
|
path: tests-action
|
|
- name: Set up Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20
|
|
- name: Install Node.js dependencies
|
|
working-directory: tests-action
|
|
run: npm ci
|
|
- name: Run Pre-test
|
|
working-directory: tests-action
|
|
run: npx vitest run --project pre ${{ !runner.debug && '--silent' || '' }}
|
|
|
|
run-tests:
|
|
name: Run Tests
|
|
needs: [pre-test]
|
|
strategy:
|
|
matrix:
|
|
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
|
|
uses: ./.github/workflows/test-shard-template.yml
|
|
with:
|
|
project: main
|
|
shard: ${{ matrix.shard }}
|
|
totalShards: 10 |