name: CI on: push: branches: [main] pull_request: permissions: contents: read concurrency: group: ci-${{ github.ref }} cancel-in-progress: true jobs: check: runs-on: ubuntu-latest steps: # The publish tests read real release tags out of the history, so a # shallow, tagless clone makes them fail. - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: oven-sh/setup-bun@v2 with: bun-version: 1.4.3 - name: Install dependencies run: bun install --frozen-lockfile - name: Check installer syntax run: bash -n install.sh - name: Type-check run: bun run typecheck - name: Test run: bun run test - name: Build pages run: NODE_ENV=production bunx bunext build - name: Check bundle budget run: bun run check:bundle