Skip to content

feat: initial project scaffold (#1, #2, #3, #4, #5, #6) #1

feat: initial project scaffold (#1, #2, #3, #4, #5, #6)

feat: initial project scaffold (#1, #2, #3, #4, #5, #6) #1

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
jobs:
test:
name: Test & Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Format check
run: bun run format:check
- name: Lint
run: bun run lint
- name: Dead code check
run: bun run knip
- name: Run tests
run: bun test --coverage
- name: Build (smoke test)
run: bun run build --target bun
build-matrix:
name: Cross-compile (${{ matrix.target }})
runs-on: ubuntu-latest
needs: test
strategy:
fail-fast: false
matrix:
target:
- bun-linux-x64
- bun-linux-arm64
- bun-darwin-x64
- bun-darwin-arm64
- bun-windows-x64
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Build for ${{ matrix.target }}
run: bun run build --target ${{ matrix.target }}
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: github-issue-ops-${{ matrix.target }}
path: dist/