Skip to content

ci: align test matrix with Node 20 baseline #3

ci: align test matrix with Node 20 baseline

ci: align test matrix with Node 20 baseline #3

Workflow file for this run

name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node-version: [20.x, 22.x]
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run typecheck
run: npm run typecheck
- name: Run smoke pack
run: npm run smoke:pack
- name: Run boundary checks
run: npm run check:boundaries
- name: Run tests
run: npm test
- name: Run domain tests
run: npm run test:domain
- name: Run audit
run: npm audit --omit=dev
sqlite-smoke:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Install better-sqlite3
run: npm install better-sqlite3
- name: Run SQLite smoke
run: npm run sqlite:smoke
perf-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run perf check
run: npm run perf:check -- --runs=3
continue-on-error: true
release-clean:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: 'npm'
- name: Check release clean
run: npm run release:clean
fresh-consumer:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run fresh consumer matrix
run: npm run fresh:consumer
release-gate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run release gate
run: npm run release:gate