| name: Node CI | |
| on: [push, pull_request] | |
| jobs: | |
| build: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [windows-latest, macOS-latest, ubuntu-latest] | |
| node: [18.x, 19.x, 20.x] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v3 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| - name: npm install, build, and test | |
| run: | | |
| npm install | |
| npm run build --if-present | |
| npm test | |
| env: | |
| CI: true | |