From 153901f234e6553af68ee5b9e2b47c7ad07fe8cf Mon Sep 17 00:00:00 2001 From: josefaidt Date: Sat, 14 Feb 2026 17:30:04 -0800 Subject: [PATCH 1/4] migrate to node-version file, use corepack in actions to manage pnpm --- .github/workflows/conformance.yml | 22 ++++++--------- .github/workflows/main.yml | 37 ++++++++----------------- .github/workflows/publish.yml | 8 ++---- .github/workflows/release.yml | 8 ++---- .github/workflows/update-spec-types.yml | 9 ++---- .node-version | 1 + 6 files changed, 26 insertions(+), 59 deletions(-) create mode 100644 .node-version diff --git a/.github/workflows/conformance.yml b/.github/workflows/conformance.yml index 47606314e..a42d13472 100644 --- a/.github/workflows/conformance.yml +++ b/.github/workflows/conformance.yml @@ -18,16 +18,13 @@ jobs: runs-on: ubuntu-latest continue-on-error: true steps: - - uses: actions/checkout@v4 - - name: Install pnpm - uses: pnpm/action-setup@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 with: - run_install: false - - uses: actions/setup-node@v4 - with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml + - run: corepack enable - run: pnpm install - run: pnpm run build:all - run: pnpm run test:conformance:client:all @@ -36,16 +33,13 @@ jobs: runs-on: ubuntu-latest continue-on-error: true steps: - - uses: actions/checkout@v4 - - name: Install pnpm - uses: pnpm/action-setup@v4 - with: - run_install: false - - uses: actions/setup-node@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml + - run: corepack enable - run: pnpm install - run: pnpm run build:all - run: pnpm run test:conformance:server diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 73162fba5..e71f94543 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,16 +18,12 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install pnpm - uses: pnpm/action-setup@v4 - id: pnpm-install - with: - run_install: false - uses: actions/setup-node@v6 with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml + - run: corepack enable - run: pnpm install - run: pnpm run check:all @@ -43,16 +39,12 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install pnpm - uses: pnpm/action-setup@v4 - id: pnpm-install - with: - run_install: false - uses: actions/setup-node@v6 with: node-version: ${{ matrix.node-version }} cache: pnpm cache-dependency-path: pnpm-lock.yaml + - run: corepack enable - run: pnpm install @@ -69,19 +61,15 @@ jobs: id-token: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - - name: Install pnpm - uses: pnpm/action-setup@v4 - id: pnpm-install - with: - run_install: false - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml registry-url: 'https://registry.npmjs.org' + - run: corepack enable - run: pnpm install - name: Determine npm tag @@ -120,19 +108,16 @@ jobs: contents: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: fetch-depth: 0 # Fetch all history for all branches and tags - - name: Install pnpm - uses: pnpm/action-setup@v4 - with: - run_install: false - - uses: actions/setup-node@v4 + - uses: actions/setup-node@v6 with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml + - run: corepack enable - name: Install dependencies run: pnpm install diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a180396b6..da9892fa5 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -18,18 +18,14 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install pnpm - uses: pnpm/action-setup@v4 - with: - run_install: false - - name: Setup Node.js uses: actions/setup-node@v6 with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml registry-url: 'https://registry.npmjs.org' + - run: corepack enable - name: Install dependencies run: pnpm install diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ed0b1061b..005ead9a6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -18,18 +18,14 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install pnpm - uses: pnpm/action-setup@v4 - with: - run_install: false - - name: Setup Node.js uses: actions/setup-node@v6 with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml registry-url: 'https://registry.npmjs.org' + - run: corepack enable - name: Install dependencies run: pnpm install diff --git a/.github/workflows/update-spec-types.yml b/.github/workflows/update-spec-types.yml index 4a54f76c5..5de665a92 100644 --- a/.github/workflows/update-spec-types.yml +++ b/.github/workflows/update-spec-types.yml @@ -17,18 +17,13 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Install pnpm - uses: pnpm/action-setup@v4 - id: pnpm-install - with: - run_install: false - - name: Setup Node.js uses: actions/setup-node@v6 with: - node-version: 24 + node-version-file: .node-version cache: pnpm cache-dependency-path: pnpm-lock.yaml + - run: corepack enable - name: Install dependencies run: pnpm install diff --git a/.node-version b/.node-version new file mode 100644 index 000000000..11c309c52 --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +v24.13.1 From e91957c31e0e1172d3b9a28cb88518249b446da0 Mon Sep 17 00:00:00 2001 From: josefaidt Date: Sat, 14 Feb 2026 17:50:09 -0800 Subject: [PATCH 2/4] use corepack with custom pnpm cache --- .github/workflows/conformance.yml | 22 ++++++++++--- .github/workflows/main.yml | 44 ++++++++++++++++++++----- .github/workflows/publish.yml | 11 +++++-- .github/workflows/release.yml | 11 +++++-- .github/workflows/update-spec-types.yml | 11 +++++-- 5 files changed, 81 insertions(+), 18 deletions(-) diff --git a/.github/workflows/conformance.yml b/.github/workflows/conformance.yml index a42d13472..c49397606 100644 --- a/.github/workflows/conformance.yml +++ b/.github/workflows/conformance.yml @@ -22,9 +22,16 @@ jobs: - uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - run: pnpm install - run: pnpm run build:all - run: pnpm run test:conformance:client:all @@ -37,9 +44,16 @@ jobs: - uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - run: pnpm install - run: pnpm run build:all - run: pnpm run test:conformance:server diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e71f94543..69491df31 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -21,9 +21,16 @@ jobs: - uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - run: pnpm install - run: pnpm run check:all @@ -42,9 +49,16 @@ jobs: - uses: actions/setup-node@v6 with: node-version: ${{ matrix.node-version }} - cache: pnpm - cache-dependency-path: pnpm-lock.yaml - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - run: pnpm install @@ -66,10 +80,17 @@ jobs: - uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml registry-url: 'https://registry.npmjs.org' - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - run: pnpm install - name: Determine npm tag @@ -115,9 +136,16 @@ jobs: - uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - name: Install dependencies run: pnpm install diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index da9892fa5..e029e4932 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -22,10 +22,17 @@ jobs: uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml registry-url: 'https://registry.npmjs.org' - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - name: Install dependencies run: pnpm install diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 005ead9a6..6a89dbdb6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -22,10 +22,17 @@ jobs: uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml registry-url: 'https://registry.npmjs.org' - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - name: Install dependencies run: pnpm install diff --git a/.github/workflows/update-spec-types.yml b/.github/workflows/update-spec-types.yml index 5de665a92..4b1b1fa24 100644 --- a/.github/workflows/update-spec-types.yml +++ b/.github/workflows/update-spec-types.yml @@ -21,9 +21,16 @@ jobs: uses: actions/setup-node@v6 with: node-version-file: .node-version - cache: pnpm - cache-dependency-path: pnpm-lock.yaml - run: corepack enable + - name: Get pnpm store directory + shell: bash + run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + - uses: actions/cache@v4 + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- - name: Install dependencies run: pnpm install From a32be07501ff5a8621fa00a24fe0517fab81c611 Mon Sep 17 00:00:00 2001 From: josefaidt Date: Sat, 14 Feb 2026 17:54:13 -0800 Subject: [PATCH 3/4] abstract node setup with pnpm cache --- .github/actions/setup-node-pnpm/action.yml | 43 ++++++++++++++ .github/workflows/conformance.yml | 30 +--------- .github/workflows/main.yml | 65 ++-------------------- .github/workflows/publish.yml | 18 +----- .github/workflows/release.yml | 18 +----- .github/workflows/update-spec-types.yml | 18 +----- 6 files changed, 52 insertions(+), 140 deletions(-) create mode 100644 .github/actions/setup-node-pnpm/action.yml diff --git a/.github/actions/setup-node-pnpm/action.yml b/.github/actions/setup-node-pnpm/action.yml new file mode 100644 index 000000000..438072669 --- /dev/null +++ b/.github/actions/setup-node-pnpm/action.yml @@ -0,0 +1,43 @@ +name: 'Setup Node with Corepack and pnpm' +description: 'Sets up Node.js with Corepack-managed pnpm and caching' + +inputs: + node-version-file: + description: 'Path to Node version file' + required: false + default: '.node-version' + node-version: + description: 'Node version (overrides node-version-file)' + required: false + registry-url: + description: 'Registry URL for npm authentication' + required: false + +runs: + using: 'composite' + steps: + - name: Setup Node.js + uses: actions/setup-node@v6 + id: setup-node + with: + node-version: ${{ inputs.node-version }} + node-version-file: ${{ inputs.node-version && '' || inputs.node-version-file }} + registry-url: ${{ inputs.registry-url }} + + - name: Enable Corepack + shell: bash + run: corepack enable + + - name: Setup pnpm cache + uses: actions/cache@v4 + with: + path: .pnpm-store + key: ${{ runner.os }}-node-${{ steps.setup-node.outputs.node-version }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-node-${{ steps.setup-node.outputs.node-version }}-pnpm-store- + + - name: Install dependencies + shell: bash + env: + PNPM_STORE_DIR: .pnpm-store + run: pnpm install --frozen-lockfile diff --git a/.github/workflows/conformance.yml b/.github/workflows/conformance.yml index c49397606..18550a433 100644 --- a/.github/workflows/conformance.yml +++ b/.github/workflows/conformance.yml @@ -19,20 +19,7 @@ jobs: continue-on-error: true steps: - uses: actions/checkout@v6 - - uses: actions/setup-node@v6 - with: - node-version-file: .node-version - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - run: pnpm install + - uses: ./.github/actions/setup-node-pnpm - run: pnpm run build:all - run: pnpm run test:conformance:client:all @@ -41,19 +28,6 @@ jobs: continue-on-error: true steps: - uses: actions/checkout@v6 - - uses: actions/setup-node@v6 - with: - node-version-file: .node-version - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - run: pnpm install + - uses: ./.github/actions/setup-node-pnpm - run: pnpm run build:all - run: pnpm run test:conformance:server diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 69491df31..e3d9ca3bd 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,22 +17,7 @@ jobs: steps: - uses: actions/checkout@v6 - - - uses: actions/setup-node@v6 - with: - node-version-file: .node-version - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - - run: pnpm install + - uses: ./.github/actions/setup-node-pnpm - run: pnpm run check:all - run: pnpm run build:all @@ -45,23 +30,9 @@ jobs: steps: - uses: actions/checkout@v6 - - - uses: actions/setup-node@v6 + - uses: ./.github/actions/setup-node-pnpm with: node-version: ${{ matrix.node-version }} - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - - run: pnpm install - - run: pnpm test:all publish: @@ -76,22 +47,9 @@ jobs: steps: - uses: actions/checkout@v6 - - - uses: actions/setup-node@v6 + - uses: ./.github/actions/setup-node-pnpm with: - node-version-file: .node-version registry-url: 'https://registry.npmjs.org' - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - run: pnpm install - name: Determine npm tag id: npm-tag @@ -133,22 +91,7 @@ jobs: with: fetch-depth: 0 # Fetch all history for all branches and tags - - uses: actions/setup-node@v6 - with: - node-version-file: .node-version - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - - name: Install dependencies - run: pnpm install + - uses: ./.github/actions/setup-node-pnpm - name: Configure Git run: | diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index e029e4932..01389c942 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -17,25 +17,9 @@ jobs: steps: - uses: actions/checkout@v6 - - - name: Setup Node.js - uses: actions/setup-node@v6 + - uses: ./.github/actions/setup-node-pnpm with: - node-version-file: .node-version registry-url: 'https://registry.npmjs.org' - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - - name: Install dependencies - run: pnpm install - name: Build packages run: pnpm run build:all diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6a89dbdb6..373a117b4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,25 +17,9 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - - name: Setup Node.js - uses: actions/setup-node@v6 + - uses: ./.github/actions/setup-node-pnpm with: - node-version-file: .node-version registry-url: 'https://registry.npmjs.org' - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - - name: Install dependencies - run: pnpm install - name: Create Release Pull Request or Publish to npm id: changesets diff --git a/.github/workflows/update-spec-types.yml b/.github/workflows/update-spec-types.yml index 4b1b1fa24..446067dcd 100644 --- a/.github/workflows/update-spec-types.yml +++ b/.github/workflows/update-spec-types.yml @@ -17,23 +17,7 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Setup Node.js - uses: actions/setup-node@v6 - with: - node-version-file: .node-version - - run: corepack enable - - name: Get pnpm store directory - shell: bash - run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV - - uses: actions/cache@v4 - with: - path: ${{ env.STORE_PATH }} - key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} - restore-keys: | - ${{ runner.os }}-pnpm-store- - - - name: Install dependencies - run: pnpm install + - uses: ./.github/actions/setup-node-pnpm - name: Fetch latest spec types run: pnpm run fetch:spec-types From d5574463021ca4a3b92afb48fdbaa7cdde0ff4a4 Mon Sep 17 00:00:00 2001 From: josefaidt Date: Sat, 14 Feb 2026 18:00:14 -0800 Subject: [PATCH 4/4] use absolute pnpm store path --- .github/actions/setup-node-pnpm/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-node-pnpm/action.yml b/.github/actions/setup-node-pnpm/action.yml index 438072669..5ee43fe0e 100644 --- a/.github/actions/setup-node-pnpm/action.yml +++ b/.github/actions/setup-node-pnpm/action.yml @@ -31,7 +31,7 @@ runs: - name: Setup pnpm cache uses: actions/cache@v4 with: - path: .pnpm-store + path: ${{ github.workspace }}/.pnpm-store key: ${{ runner.os }}-node-${{ steps.setup-node.outputs.node-version }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}-node-${{ steps.setup-node.outputs.node-version }}-pnpm-store- @@ -39,5 +39,5 @@ runs: - name: Install dependencies shell: bash env: - PNPM_STORE_DIR: .pnpm-store + PNPM_STORE_DIR: ${{ github.workspace }}/.pnpm-store run: pnpm install --frozen-lockfile