ci: factor out Node setup #4
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
pull_request | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node: [ 20, 22, 24 ] | |
name: Build and test with Node ${{ matrix.node }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/node | |
with: | |
node-version-override: ${{ matrix.node }} | |
- run: npm test | |
# This runs against an old alpha of GraphQL v17; hopefully Apollo Server v5 | |
# will support the released version when they both come out. | |
graphql-17-alpha-incremental-delivery: | |
runs-on: ubuntu-latest | |
name: Test against GraphQL 17 alpha with incremental delivery | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/node | |
- run: npm i --legacy-peer-deps graphql@17.0.0-alpha.2 | |
- run: npm test | |
env: | |
INCREMENTAL_DELIVERY_TESTS_ENABLED: 't' | |
prettier: | |
runs-on: ubuntu-latest | |
name: Prettier | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/node | |
- run: npm run prettier-check | |
lint: | |
runs-on: ubuntu-latest | |
name: Lint | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/node | |
- run: npm run lint | |
spell-check: | |
runs-on: ubuntu-latest | |
name: Spell Check | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/node | |
- run: npm run spell-check |