From eddd4ce6dda8079bd60cbb67b31a676cb62bf9e4 Mon Sep 17 00:00:00 2001 From: riiim400th Date: Sat, 29 Aug 2026 17:25:21 +0900 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20build:=20CI=E3=81=AEpnpm?= =?UTF-8?q?=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC=E3=83=AB=E3=82=92?= =?UTF-8?q?=E6=B1=BA=E5=AE=9A=E7=9A=84=E3=81=AB=E3=81=97=E3=80=81=E7=84=A1?= =?UTF-8?q?=E9=A7=84=E3=81=AA=E5=AE=9F=E8=A1=8C=E3=82=92=E3=82=AD=E3=83=A3?= =?UTF-8?q?=E3=83=B3=E3=82=BB=E3=83=AB=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pnpm/action-setupがversion:8にハードコードされていたが、pnpm-lock.yamlの lockfileVersionは9.0で本来pnpm9+が必要な状態だった。バージョン不一致により CIはlockfileを正しく解釈できず依存関係を独自に再解決しており、これが prettier等のバージョンがローカルとCIで食い違いformat:checkが不安定に 失敗する原因になっていた。 package.jsonにpackageManagerを追加してpnpmバージョンを自動検出させ、 pnpm installはフローズンロックファイルで実行するよう変更した。 あわせてconcurrencyグループを追加し、同一PRへの追加pushで古い実行が 自動キャンセルされるようにした。 --- .github/workflows/test.yml | 8 +++++--- package.json | 1 + 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 986f537..31b8dd0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,5 +1,9 @@ name: 'Test' +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + on: pull_request: branches: @@ -13,15 +17,13 @@ jobs: steps: - uses: actions/checkout@v6 - uses: pnpm/action-setup@v4 - with: - version: 8 - name: Use Node.js uses: actions/setup-node@v6 with: node-version-file: '.nvmrc' cache: 'pnpm' - name: Install dependencies - run: pnpm install + run: pnpm install --frozen-lockfile - name: Check with Prettier run: pnpm run format:check - name: Check with Astro diff --git a/package.json b/package.json index 11afce8..6d01381 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "type": "module", "version": "0.0.1", "private": true, + "packageManager": "pnpm@10.19.0", "engines": { "node": "24.19.0" },