Skip to content

chore: set up initial actions & docs #21

chore: set up initial actions & docs

chore: set up initial actions & docs #21

Workflow file for this run

# For more information see: https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/running-variations-of-jobs-in-a-workflow
name: CI
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
jobs:
lint-and-types:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [23.x]
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- run: npm ci
- run: npm run lint
- run: npm run format
- run: npm run test:types
matrix:
runs-on: ubuntu-22.04
outputs:
latest: ${{ steps.set-matrix.outputs.requireds }}
steps:
- uses: ljharb/actions/node/matrix@6f6460d952d0fa896c91a56c2e450cb8c9fd1a21 # main
id: set-matrix
with:
versionsAsRoot: true
type: majors
preset: '>= 22' # glob is not backported below 22.x
tests:
needs: [matrix]
strategy:
fail-fast: false
matrix:
node: ${{ fromJson(needs.matrix.outputs.latest) }}
os:
- macos-latest
- ubuntu-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
- name: Set up Node.js ${{ matrix.node.version }}
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # 4.1.0
with:
node-version: ${{ matrix.node.version }}
cache: 'npm'
- run: npm ci
- run: npm run test:unit
- run: npm run test:e2e