Skip to content
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
24 changes: 19 additions & 5 deletions .github/workflows/node-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ jobs:
apk update
apk upgrade
rustup-init -y
npm install -g pnpm@10.24.0
corepack enable
cd impit-node && pnpm install --frozen-lockfile && pnpm build
- host: ubuntu-22.04-arm
target: aarch64-unknown-linux-gnu
Expand All @@ -68,7 +68,7 @@ jobs:
apk update
apk upgrade
rustup-init -y
npm install -g pnpm@10.24.0
corepack enable
rustup target add aarch64-unknown-linux-musl
wget https://github.com/napi-rs/napi-rs/releases/download/linux-musl-cross%4010/aarch64-linux-musl-cross.tgz
tar -xvf aarch64-linux-musl-cross.tgz
Expand Down Expand Up @@ -186,10 +186,24 @@ jobs:
architecture: x64

- name: Install pnpm and dependencies
if: runner.os != 'Windows'
uses: apify/actions/pnpm-install@v1.5.0
with:
working-directory: impit-node

- name: Install pnpm and dependencies (Windows)
# pnpm/action-setup bootstraps its own bundled pnpm version, then pnpm's
# self-management switches it to the packageManager-pinned version. That
# switch computes the new binary's location relative to wherever the
# bootstrap installed it, which differs by Node version on Windows and
# produces a broken path on Node 22/24. corepack installs the pinned
# version directly, skipping the switch entirely.
if: runner.os == 'Windows'
shell: bash
run: |
corepack enable
cd impit-node && pnpm install --frozen-lockfile

- name: Download artifacts
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
with:
Expand Down Expand Up @@ -236,7 +250,7 @@ jobs:
run: ls -R .
shell: bash
- name: Test bindings
run: docker run -e CI=1 -e APIFY_HTTPBIN_TOKEN=${{ secrets.APIFY_HTTPBIN_TOKEN }} --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-slim sh -c "npm install -g pnpm@10.24.0 && cd impit-node && pnpm test"
run: docker run -e CI=1 -e APIFY_HTTPBIN_TOKEN=${{ secrets.APIFY_HTTPBIN_TOKEN }} --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-slim sh -c "corepack enable && cd impit-node && pnpm test"

test-linux-aarch64-gnu-binding:
name: Test bindings on Linux-aarch64-gnu - node@${{ matrix.node }}
Expand Down Expand Up @@ -305,7 +319,7 @@ jobs:
shell: bash
- name: Test bindings
run: |
docker run -e CI=1 -e APIFY_HTTPBIN_TOKEN=${{ secrets.APIFY_HTTPBIN_TOKEN }} --rm -v $(pwd):/build -w /build arm64v8/node:${{ matrix.node }}-alpine sh -c "npm install -g pnpm@10.24.0 && cd impit-node && pnpm install --frozen-lockfile && pnpm test"
docker run -e CI=1 -e APIFY_HTTPBIN_TOKEN=${{ secrets.APIFY_HTTPBIN_TOKEN }} --rm -v $(pwd):/build -w /build arm64v8/node:${{ matrix.node }}-alpine sh -c "corepack enable && cd impit-node && pnpm install --frozen-lockfile && pnpm test"

test-linux-x64-musl-binding:
name: Test bindings on x86_64-unknown-linux-musl - node@${{ matrix.node }}
Expand Down Expand Up @@ -336,4 +350,4 @@ jobs:
shell: bash
- name: Test bindings
run: |
docker run -e CI=1 -e APIFY_HTTPBIN_TOKEN=${{ secrets.APIFY_HTTPBIN_TOKEN }} --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-alpine sh -c "npm install -g pnpm@10.24.0 && cd impit-node && pnpm install --frozen-lockfile && pnpm test"
docker run -e CI=1 -e APIFY_HTTPBIN_TOKEN=${{ secrets.APIFY_HTTPBIN_TOKEN }} --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-alpine sh -c "corepack enable && cd impit-node && pnpm install --frozen-lockfile && pnpm test"
2 changes: 1 addition & 1 deletion impit-node/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
"universal": "napi universal",
"copy-version": "napi version"
},
"packageManager": "pnpm@10.24.0",
"packageManager": "pnpm@12.3.4",
"description": "Impit for JavaScript",
"optionalDependencies": {
"impit-darwin-x64": "0.14.4",
Expand Down
101 changes: 101 additions & 0 deletions impit-node/pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading