Skip to content

Add laptime tracker example #19

Add laptime tracker example

Add laptime tracker example #19

Workflow file for this run

# TODO: Cache builds better.
# TODO: Only build the affected packages.
# TODO: Add back in lint step once toolchain is modernized.
name: Check PR
concurrency: ${{ github.workflow }}-${{ github.ref }}
on:
pull_request:
types: [opened, synchronize]
env:
CI: true
NODE_VERSION: 20
jobs:
# Re-enable once eslint is updated. Everything is outdated and a pain.
# lint:
# name: Lint
# runs-on: ubuntu-latest
# steps:
# - name: Checkout repo
# uses: actions/checkout@v4
# - name: Setup pnpm
# uses: pnpm/action-setup@v4
# with:
# run_install: false
# - name: Setup Node ${{ env.NODE_VERSION }}
# uses: actions/setup-node@v4
# with:
# node-version: ${{ env.NODE_VERSION }}
# cache: "pnpm"
# - name: Cache dependencies
# uses: actions/cache@v4
# id: cache
# with:
# path: |
# ~/.pnpm-store
# ./node_modules
# key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }}
# restore-keys: |
# pnpm-${{ runner.os }}-
# - name: Init pnpm dependencies
# run: pnpm install
# - name: Lint codebase
# run: pnpm run lint
build-types:
name: Build @irsdk-node/types
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-library
with:
package-name: "@irsdk-node/types"
node-version: 20
build-native-ts:
name: Build @irsdk-node/native
needs: build-types
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-library
with:
package-name: "@irsdk-node/native"
node-version: 20
build-native-modules:
name: Build @irsdk-node/native ${{ matrix.runner }}
needs: build-native-ts
strategy:
matrix:
runner: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-native-library
with:
package-name: "@irsdk-node/native"
node-version: 20
artifact-dir: ./packages/irsdk-node-native/prebuilds
build-core-lib:
needs:
- build-types
- build-native-ts
name: Build irsdk-node
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-library
with:
package-name: "irsdk-node"
node-version: 20