Skip to content

Dev 1.0.22-dev.1

Dev 1.0.22-dev.1 #47

name: Build, lint and test
on: [push, pull_request]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
node-version: [18.x, 20.x, 22.x]
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Clean cache
run: npm cache clean --force
- name: Install latest npm
run: npm install -g npm@latest
- name: Verify Node.js version
run: node -v
- name: Verify Npm version
run: npm -v
- name: Install matterbridge
run: npm install -g matterbridge --omit=dev
- name: Install dependencies
run: npm ci
- name: Link matterbridge
run: npm link matterbridge
- name: Lint the project
run: npm run lint
- name: Test the project
run: npm run test
- name: Build the project
run: npm run build