53 lines
1.7 KiB
YAML
53 lines
1.7 KiB
YAML
# https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs
|
|
# https://github.com/actions/setup-node
|
|
# https://docs.github.com/en/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners#standard-github-hosted-runners-for-public-repositories
|
|
|
|
name: ci
|
|
on:
|
|
push:
|
|
# branches: [main]
|
|
pull_request:
|
|
# branches: [main]
|
|
workflow_dispatch:
|
|
permissions:
|
|
contents: read
|
|
jobs:
|
|
ci:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix: # TODO: Enable 23.x after nodejs/nan#979 or similar.
|
|
node-version: [22.x, 21.x, 20.x, 19.x, 18.x, 17.x, 16.x]
|
|
os: [windows-latest]
|
|
include:
|
|
- node-version: lts/*
|
|
os: macos-13 # macOS on Intel
|
|
- node-version: lts/*
|
|
os: macos-latest # macOS on arm64
|
|
- node-version: lts/*
|
|
os: ubuntu-latest # Linux on x64
|
|
- node-version: lts/*
|
|
os: ubuntu-24.04-arm # Linux on arm64
|
|
- node-version: lts/*
|
|
os: windows-2025
|
|
- node-version: 14.x
|
|
os: windows-2019
|
|
- node-version: 12.x
|
|
os: windows-2019
|
|
- node-version: 10.x
|
|
os: windows-2019
|
|
- node-version: 8.x
|
|
os: windows-2019
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: npm install
|
|
# TODO: On Windows Node.js v11 these will fail but `make test` will succeed
|
|
- if: matrix.node-version != '11.x'
|
|
run: |
|
|
npm run-script rebuild-tests
|
|
npm test
|
|
- run: make test
|