update CI build to test nodejs releases compatibility #382
This file contains 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: Test | |
on: | |
push: | |
concurrency: | |
group: build-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-ui: | |
name: UI | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [16, 22] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'npm' | |
- name: install voyager dependencies | |
run: (cd source/voyager && npm ci --legacy-peer-deps) | |
- name: install ui dependencies | |
run: npm ci && (cd source/ui && npm ci) | |
- name: build UI | |
run: npm run build-ui | |
build-server: | |
name: Server | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [16, 18, 20, 22] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'npm' | |
- name: install | |
run: npm ci && (cd source/server && npm ci) | |
- name: test | |
run: (cd source/server && npm test) | |
- name: build server | |
run: npm run build-server | |
- name: check if watch mode works | |
timeout-minutes: 1 | |
# this will crash if some some reason watch mode is terrybly broken | |
#It won't wait for client code to compile though. | |
run: | |
npm run watch -- --exitcrash -- --version |