Skip to content

chore: setup changset and release workflow #4

chore: setup changset and release workflow

chore: setup changset and release workflow #4

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
HUSKY: 0
CI: true
jobs:
test:
name: Test (Node ${{ matrix.node }})
runs-on: ubuntu-latest
timeout-minutes: 20
strategy:
fail-fast: true
matrix:
node: [20, 22]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Dependencies
uses: ./.github/actions/install-dependencies
with:
node-version: ${{ matrix.node }}
- name: Run build
run: pnpm run build
- name: Run test
run: pnpm run test
check:
name: Code check
runs-on: ubuntu-latest
timeout-minutes: 20
strategy:
fail-fast: true
matrix:
script: [typecheck, lint, format]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Dependencies
uses: ./.github/actions/install-dependencies
- name: Run ${{ matrix.script }}
run: pnpm run ${{ matrix.script }}
ci-ok:
name: CI OK
runs-on: ubuntu-latest
if: always()
needs: [test, check]
env:
FAILURE: ${{ contains(join(needs.*.result, ','), 'failure') }}
steps:
- name: Check for failure
run: |
echo $FAILURE
if [ "$FAILURE" = "false" ]; then
exit 0
else
exit 1
fi