fix ci #254
Workflow file for this run
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
# Based on https://github.com/actions/starter-workflows/blob/master/ci/node.js.yml | |
name: Build and Test | |
on: [push, pull_request] | |
jobs: | |
ci: | |
runs-on: ${{ matrix.operating-system }} | |
strategy: | |
matrix: | |
operating-system: [ubuntu-latest, macos-latest, windows-latest] | |
# Node 12.x is EOL as of April 2022: https://nodejs.org/en/blog/release/v12.13.0. | |
node-version: [14.x, 16.x, 18.x, 20.x] | |
# The 'setup-node' action has become unable to locate versions for macos ("darwin") on arm64 | |
# for some reason. Processor architecture shouldn't affect any of our testing, so we can pin | |
# this for now. | |
architecture: [x64] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'npm' | |
cache-dependency-path: 'package-lock.json' | |
architecture: ${{ matrix.architecture }} | |
- run: npm ci | |
# Ensure that we can still build in the current version of Node | |
- run: node ./bin/cake build:except-parser | |
- run: node ./bin/cake build:parser | |
# Build twice to ensure that the latest build of the compiler can still build itself | |
- run: node ./bin/cake build:except-parser | |
- run: node ./bin/cake build:parser | |
# Build the browser compiler for the headless browser test | |
- run: node ./bin/cake build:browser | |
# Build test.html, so that test:browser uses the latest tests | |
- run: node ./bin/cake doc:test | |
# Check that the git diff is clean, to ensure that the updated build output was committed | |
- run: git diff --exit-code | |
# Test | |
- run: node ./bin/cake test | |
- run: node ./bin/cake test:browser || node ./bin/cake test:browser || node ./bin/cake test:browser | |
- run: node ./bin/cake test:browser:node | |
- run: node ./bin/cake test:integrations |