chore(release): version packages v2.10.2 #152
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] | |
| pull_request: | |
| branches: [main] | |
| types: [opened, synchronize, reopened] | |
| # Cancel in-flight runs for the same branch when a new commit arrives. | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| # ── Branch protection ────────────────────────────────────────────────────────── | |
| # Require the following status checks before merging: | |
| # Settings → Branches → main → Require status checks to pass before merging | |
| # ✓ Build & Type-check | |
| # ✓ Lint | |
| # ✓ Test | |
| # ✓ Docs Build | |
| # ────────────────────────────────────────────────────────────────────────────── | |
| jobs: | |
| # ── Build all packages + type-check ───────────────────────────────────────── | |
| build: | |
| name: Build & Type-check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10.1.0 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| # SDK must be built first — other packages resolve @rushdb/javascript-sdk | |
| # from the workspace dist/ directory. | |
| - name: Build javascript-sdk | |
| run: pnpm --filter ./packages/javascript-sdk build | |
| - name: Build mcp-server | |
| run: pnpm --filter ./packages/mcp-server build | |
| - name: Build platform/core | |
| run: pnpm --filter ./platform/core build | |
| # Dashboard: type-check only — the full Vite production build requires | |
| # NODE_OPTIONS=--max-old-space-size=8192 and is covered by the release job. | |
| - name: Type-check platform/dashboard | |
| run: pnpm --filter ./platform/dashboard types:check | |
| - name: Type-check javascript-sdk | |
| run: pnpm --filter ./packages/javascript-sdk types:check | |
| - name: Type-check docs | |
| run: pnpm --filter ./docs types:check | |
| # ── ESLint across all packages that define a lint script ──────────────────── | |
| lint: | |
| name: Lint | |
| runs-on: ubuntu-latest | |
| # Both platform/core (.eslintrc.js) and platform/dashboard (.eslintrc) use | |
| # legacy config format. ESLint 9 defaults to flat config, so opt back into | |
| # legacy mode for the entire job. | |
| env: | |
| ESLINT_USE_FLAT_CONFIG: 'false' | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10.1.0 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| # Type-aware lint rules in platform/core require the SDK types to be present. | |
| - name: Build javascript-sdk | |
| run: pnpm --filter ./packages/javascript-sdk build | |
| - name: Lint platform/core | |
| run: pnpm --filter ./platform/core lint | |
| # ── Unit tests (no external services required) ────────────────────────────── | |
| test: | |
| name: Test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10.1.0 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Build javascript-sdk | |
| run: pnpm --filter ./packages/javascript-sdk build | |
| # 9 pure unit tests for the Cypher query parser — no DB or network required. | |
| - name: Test platform/core (unit) | |
| run: pnpm --filter ./platform/core test | |
| env: | |
| NODE_ENV: test | |
| # ── Docusaurus build (validates all internal links and MDX syntax) ─────────── | |
| docs: | |
| name: Docs Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10.1.0 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Build docs | |
| run: pnpm --filter ./docs build |