chore: source-first — point main/exports to src, dist in publishConfig #214
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| pull_request: | |
| branches: | |
| - main | |
| push: | |
| branches: | |
| - main | |
| env: | |
| TURBO_CACHE_DIR: .turbo | |
| jobs: | |
| lint: | |
| name: Lint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Repo | |
| uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Cache Turbo | |
| uses: actions/cache@v4 | |
| with: | |
| path: .turbo | |
| key: turbo-lint-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}-${{ github.sha }} | |
| restore-keys: | | |
| turbo-lint-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}- | |
| turbo-lint-${{ runner.os }}- | |
| - name: Install Dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Run Biome Check | |
| run: bun run check | |
| typecheck: | |
| name: Type Check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Repo | |
| uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Cache Turbo | |
| uses: actions/cache@v4 | |
| with: | |
| path: .turbo | |
| key: turbo-typecheck-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}-${{ github.sha }} | |
| restore-keys: | | |
| turbo-typecheck-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}- | |
| turbo-typecheck-${{ runner.os }}- | |
| - name: Install Dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Run TypeScript Type Check | |
| run: bun run typecheck | |
| build: | |
| name: Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Repo | |
| uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Cache Turbo | |
| uses: actions/cache@v4 | |
| with: | |
| path: .turbo | |
| key: turbo-build-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}-${{ github.sha }} | |
| restore-keys: | | |
| turbo-build-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}- | |
| turbo-build-${{ runner.os }}- | |
| - name: Install Dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Build All Packages | |
| run: bun run build | |
| - name: Check Build Artifacts | |
| run: | | |
| for pkg in arp core node-provider resourcex server; do | |
| if [ -d "packages/$pkg/dist" ]; then | |
| echo "✅ packages/$pkg built successfully" | |
| else | |
| echo "❌ packages/$pkg build failed - no dist directory" | |
| exit 1 | |
| fi | |
| done | |
| test: | |
| name: Test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Repo | |
| uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Cache Turbo | |
| uses: actions/cache@v4 | |
| with: | |
| path: .turbo | |
| key: turbo-test-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}-${{ github.sha }} | |
| restore-keys: | | |
| turbo-test-${{ runner.os }}-${{ hashFiles('**/bun.lock') }}- | |
| turbo-test-${{ runner.os }}- | |
| - name: Install Dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Build Packages | |
| run: bun run build | |
| - name: Run Unit Tests | |
| run: bun run test | |
| - name: Run BDD Tests | |
| run: bun run test:bdd |