ci(npm): run tests and benchmarks on node v22.13.0 #363
Workflow file for this run
This file contains 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: Pull Request Validation | |
on: | |
# pull_request: | |
# types: | |
# - opened | |
# - reopened | |
# - synchronize | |
# - ready_for_review | |
# - converted_to_draft | |
# paths-ignore: | |
# - '**/*.md' | |
# - LICENSE | |
# - '**/*.gitignore' | |
# - .editorconfig | |
# - docs/** | |
pull_request_target: | |
types: | |
- opened | |
- reopened | |
- synchronize | |
- ready_for_review | |
- converted_to_draft | |
paths-ignore: | |
- '**/*.md' | |
- LICENSE | |
- '**/*.gitignore' | |
- .editorconfig | |
- docs/** | |
push: | |
branches: | |
- develop | |
env: | |
APP_NAME: 'rs-compiler' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.event.ref }} | |
cancel-in-progress: true | |
jobs: | |
pr-validation: | |
name: PR Validation | |
if: github.event.pull_request.number == null || !github.event.pull_request.draft | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
settings: | |
- host: ubuntu-latest | |
target: x86_64-unknown-linux-gnu | |
permissions: | |
contents: write | |
pull-requests: write | |
repository-projects: write | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Setup environment | |
uses: ./.github/actions/setup | |
- name: Cache turbo build setup | |
uses: ./.github/actions/turbo | |
- name: Format code | |
run: pnpm run format:check | |
- name: Lint code | |
run: pnpm run lint:check | |
- name: Typecheck code | |
run: pnpm run typecheck | |
- name: Run tests | |
run: pnpm run test | |
env: | |
RUST_MIN_STACK: 16777216 | |
- name: Build all public packages | |
run: pnpm exec turbo run --filter "{./packages/*}..." --filter "{./crates/*}..." build | |
- name: Check artifacts | |
run: pnpm run --filter "{./packages/*}" --filter "{./crates/*}" check:artifacts | |
- name: Download previous benchmark data | |
uses: actions/cache@v4 | |
with: | |
path: ./cache | |
key: ${{ matrix.settings.target }}-benchmark-${{ github.ref }} | |
restore-keys: | | |
${{ matrix.settings.target }}-benchmark- | |
- name: Run benchmarks | |
run: pnpm run --filter @stylexswc/rs-compiler bench | |
- name: Store benchmark result | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
tool: 'benchmarkjs' | |
output-file-path: 'crates/stylex-rs-compiler/benchmark/results/output.txt' | |
external-data-json-path: './cache/benchmark-data.json' | |
fail-on-alert: true | |
comment-on-alert: true | |
alert-comment-cc-users: '@Dwlad90' | |
summary-always: true | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
alert-threshold: '150%' | |
fail-threshold: '175%' | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |