chore: release packages #171
Workflow file for this run
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] | |
| # Cancel an in-flight CI run if a newer commit lands on the same ref. | |
| concurrency: | |
| group: ci-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true" | |
| # Skip CI on PR sync events from the changesets/release-plz bot. Same | |
| # rationale as graphrefly-rs/.github/workflows/ci.yml — see the long | |
| # comment block there. In short: the bot's release PRs add only | |
| # mechanical version bumps + changelog entries on top of code that was | |
| # already tested by the push:main run that triggered the bot. The | |
| # post-merge "chore: release packages" push will run CI again before | |
| # changesets-action publishes. | |
| jobs: | |
| check: | |
| if: "${{ (github.event_name != 'pull_request' || github.actor != 'graphrefly-write-content[bot]') && (github.event_name != 'push' || !startsWith(github.event.head_commit.message, 'chore: release')) }}" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: actions/setup-node@v5 | |
| with: | |
| node-version: "24" | |
| package-manager-cache: false | |
| - name: Enable Corepack (pnpm) | |
| run: | | |
| corepack enable | |
| corepack install | |
| - run: pnpm install --frozen-lockfile | |
| - run: pnpm test | |
| # graphrefly-ts#4 — ongoing indicator that pure-ts stays | |
| # compatible with the Hermes engine React Native ships. Fast: | |
| # RN's pinned hermesc (npm, no build) + Node semantics. The | |
| # on-device VM tier (apps/rn-hermes-fixture) runs periodically, | |
| # not here. See scripts/hermes-smoke/README.md. | |
| - name: RN/Hermes engine smoke | |
| run: pnpm test:hermes | |
| - run: pnpm run lint | |
| - run: pnpm run build | |
| - name: Docs + demos build | |
| run: pnpm run docs:build | |
| env: | |
| ASTRO_SITE_URL: https://graphrefly.dev | |
| ASTRO_BASE_PATH: / | |
| # GITHUB_ACTIONS sets CI=true by default — perf-smoke.test.ts skips wall-clock (matches graphrefly-py). | |
| - name: Benchmark smoke | |
| run: pnpm bench |