Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: move test-node-api job to a new pull_request_node.yml workflow #5192

Merged
merged 2 commits into from
Feb 24, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 0 additions & 46 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,52 +102,6 @@ jobs:
- name: Run tests
run: cargo test --workspace

test-node-api:
name: Test node.js API
runs-on: ubuntu-latest
steps:
- name: Checkout PR branch
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@e013866c4215f77c925f42f60257dec7dd18836e # v1.2.1
with:
cache-target: release
cache-base: main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Build main binary
run: cargo build -p biome_cli --release
- name: Install Node.js
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version: 20
- name: Cache pnpm modules
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/.pnpm-store
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-
- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- name: Install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

- name: Build TypeScript code
run: |
pnpm --filter @biomejs/backend-jsonrpc i
pnpm --filter @biomejs/backend-jsonrpc run build
pnpm --filter @biomejs/js-api run build:wasm-bundler
pnpm --filter @biomejs/js-api run build:wasm-node
pnpm --filter @biomejs/js-api run build:wasm-web
pnpm --filter @biomejs/js-api i
pnpm --filter @biomejs/js-api run build
- name: Run JS tests
run: |
pnpm --filter @biomejs/backend-jsonrpc run test:ci
pnpm --filter @biomejs/js-api run test:ci

e2e-tests:
name: End-to-end tests
runs-on: ubuntu-latest
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/pull_request_js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ on:
- 'packages/@biomejs/**'
- 'packages/aria-data/**'
- 'packages/tailwindcss-config-analyzer/**'
- 'package.json'
- 'pnpm-lock.yaml'

# Cancel jobs when the PR is updated
concurrency:
Expand Down
70 changes: 70 additions & 0 deletions .github/workflows/pull_request_node.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Jobs run on pull request for Node.js APIs
name: Pull request Node.js
on:
pull_request:
branches:
- main
paths: # Only run when changes are made to Rust crates or Node.js packages
- "crates/**"
- "packages/@biomejs/**"
- "Cargo.toml"
- "Cargo.lock"
- "package.json"
- "pnpm-lock.yaml"
- "rust-toolchain.toml"

# Cancel jobs when the PR is updated
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true

env:
RUST_LOG: info
RUST_BACKTRACE: 1

jobs:
test-node-api:
name: Test Node.js API
runs-on: ubuntu-latest
steps:
- name: Checkout PR branch
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@e013866c4215f77c925f42f60257dec7dd18836e # v1.2.1
with:
cache-target: release
cache-base: main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Build main binary
run: cargo build -p biome_cli --release
- name: Install Node.js
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version: 20
- name: Cache pnpm modules
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/.pnpm-store
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-
- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- name: Install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

- name: Build TypeScript code
run: |
pnpm --filter @biomejs/backend-jsonrpc i
pnpm --filter @biomejs/backend-jsonrpc run build
pnpm --filter @biomejs/js-api run build:wasm-bundler
pnpm --filter @biomejs/js-api run build:wasm-node
pnpm --filter @biomejs/js-api run build:wasm-web
pnpm --filter @biomejs/js-api i
pnpm --filter @biomejs/js-api run build
- name: Run JS tests
run: |
pnpm --filter @biomejs/backend-jsonrpc run test:ci
pnpm --filter @biomejs/js-api run test:ci