Merge pull request #439 from mk3008/fix/rename-shared-binder-package #756
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: | |
| push: | |
| branches: [ main, develop, "release/*", "feature/*" ] | |
| pull_request: | |
| branches: [ main, develop ] | |
| jobs: | |
| build-and-test: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| node-version: [20.x, 22.x, 24.x] | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v4 | |
| with: | |
| run_install: false | |
| - name: Setup Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: 'pnpm' | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Lint check | |
| run: pnpm --filter "./packages/core" run lint | |
| - name: TypeScript compilation check | |
| run: pnpm --filter "./packages/core" run build | |
| - name: Run unit tests (excluding Docker-dependent tests) | |
| run: pnpm --filter "./packages/core" run test | |
| - name: Run coverage tests | |
| run: pnpm --filter "./packages/core" run coverage | |
| if: matrix.node-version == '20.x' | |
| continue-on-error: true | |
| package-tests: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| package: [core] | |
| node-version: [20.x] | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v4 | |
| with: | |
| run_install: false | |
| - name: Setup Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: 'pnpm' | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Build ${{ matrix.package }} package | |
| run: pnpm --filter "./packages/${{ matrix.package }}" run build | |
| - name: Test ${{ matrix.package }} package | |
| run: pnpm --filter "./packages/${{ matrix.package }}" run test | |
| - name: Lint ${{ matrix.package }} package | |
| run: pnpm --filter "./packages/${{ matrix.package }}" run lint | |
| benchmark: | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v4 | |
| with: | |
| run_install: false | |
| - name: Setup Node.js 20.x | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20.x | |
| cache: 'pnpm' | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Build core package | |
| run: pnpm --filter "./packages/core" run build | |
| - name: Run benchmarks | |
| run: pnpm --filter "./packages/core" run benchmark | |
| continue-on-error: true |