Make CI pass, make Node.js 18 the minimum, disables standard checking for now
#191
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: Test | |
| on: [push, pull_request] | |
| jobs: | |
| build: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| node-version: ['18', '20', '22'] | |
| os: [ubuntu, macos, windows] | |
| runs-on: ${{ matrix.os }}-latest | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Use Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: 'npm' | |
| - name: Install Node Dependencies | |
| run: npm ci --ignore-scripts | |
| - name: Install System Dependencies | |
| if: matrix.os == 'ubuntu' | |
| run: sudo apt-get update && sudo apt-get install -y xorg-dev libglu1-mesa-dev | |
| - name: Build Node Addon | |
| run: npm run compile | |
| - name: Test | |
| run: npm test | |
| build-linux-arm: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| cache: 'npm' | |
| - name: Build for arm | |
| run: docker run --platform linux/arm/v7 --rm -v "${PWD}:/work" -w /work node:20-bullseye ./tools/crossbuild.sh | |
| build-linux-arm64: | |
| runs-on: ubuntu-24.04-arm64 | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| cache: 'npm' | |
| - name: Install Node Dependencies | |
| run: npm ci --ignore-scripts | |
| - name: Install System Dependencies | |
| run: sudo apt-get update && sudo apt-get install -y xorg-dev libglu1-mesa-dev cmake build-essential | |
| - name: Build Node Addon | |
| run: npm run compile | |
| build-linux-arm-drm: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| cache: 'npm' | |
| - name: Build for arm DRM | |
| run: docker run --platform linux/arm/v7 --rm -v "${PWD}:/work" -w /work node:20-bullseye ./tools/crossbuild-drm.sh | |
| build-linux-arm64-drm: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| cache: 'npm' | |
| - name: Build for arm64 DRM | |
| run: docker run --platform linux/arm64 --rm -v "${PWD}:/work" -w /work node:20-bullseye ./tools/crossbuild-drm.sh |