From 6418e4c0605797fe28a64ecb8dd2239de2de7393 Mon Sep 17 00:00:00 2001 From: Shavonn Brown Date: Sat, 13 Jun 2026 14:28:23 -0400 Subject: [PATCH] build!: gh workflows, release --- .github/workflows/release.yml | 69 +++++++++++++++++++++++++++++++++++ .github/workflows/test.yml | 35 ++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 .github/workflows/release.yml create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..7aa0234 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,69 @@ +name: Release + +on: + pull_request: + types: [ closed ] + +permissions: + contents: write + pull-requests: write + +jobs: + test: + if: github.event.pull_request.merged == true + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + with: + ref: ${{ github.event.pull_request.merge_commit_sha }} + + - name: Setup Node + uses: actions/setup-node@v6 + with: + node-version: '24' + + - name: Set up Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Install Dependencies + run: bun install --frozen-lockfile + + - name: Typecheck + run: bun run typecheck + + - name: Test + run: bun run test:run + + release: + needs: test + if: github.event.pull_request.merged == true + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + with: + ref: ${{ github.event.pull_request.merge_commit_sha }} + fetch-depth: 0 + + - name: Setup Node + uses: actions/setup-node@v6 + with: + node-version: '24' + + - name: Set up Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Install Dependencies + run: bun install + + - uses: offload-project/release-champion@v1 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + draft-release: false + publish-npm: true + npm-token: ${{ secrets.NPM_WRITE }} + npm-registry: 'https://registry.npmjs.org' + npm-build-command: 'bun run build' diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..1735b72 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,35 @@ +name: Test + +on: + push: + branches: [main] + pull_request: + workflow_dispatch: + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + + - name: Setup Node + uses: actions/setup-node@v6 + with: + node-version: '24' + + - name: Set up Bun + uses: oven-sh/setup-bun@v2 + with: + bun-version: latest + + - name: Install Dependencies + run: bun install --frozen-lockfile + + - name: Typecheck + run: bun run typecheck + + - name: Test + run: bun run test:run + + - name: Build + run: bun run build