38 lines
1 KiB
YAML
38 lines
1 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
check:
|
|
runs-on: node-24
|
|
steps:
|
|
- uses: https://code.forgejo.org/actions/checkout@v4
|
|
- name: Cache npm dependencies
|
|
uses: https://code.forgejo.org/actions/cache@v4
|
|
with:
|
|
path: ~/.npm
|
|
key: node-24-${{ hashFiles('**/package-lock.json') }}
|
|
- run: npm ci
|
|
- run: npm run check
|
|
|
|
build:
|
|
needs: check
|
|
strategy:
|
|
matrix:
|
|
node: [22, 24]
|
|
runs-on: node-${{ matrix.node }}
|
|
steps:
|
|
- uses: https://code.forgejo.org/actions/checkout@v4
|
|
- name: Cache npm dependencies
|
|
uses: https://code.forgejo.org/actions/cache@v4
|
|
with:
|
|
path: ~/.npm
|
|
key: node-${{ matrix.node }}-${{ hashFiles('**/package-lock.json') }}
|
|
- run: npm ci
|
|
- run: npm run build
|
|
- run: npm test
|