From 58b17771983b6ef1f96f714a432fd8f1c12d6fed Mon Sep 17 00:00:00 2001 From: yangjianbo Date: Tue, 6 Jan 2026 13:42:47 +0800 Subject: [PATCH] =?UTF-8?q?fix(ci):=20=E4=BF=AE=E5=A4=8D=20frontend-securi?= =?UTF-8?q?ty=20job=20=E4=B8=AD=E7=9A=84=20pnpm=20=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E9=A1=BA=E5=BA=8F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **问题描述:** GitHub Actions 在 frontend-security job 中报错: "Error: Unable to locate executable file: pnpm" **根本原因:** setup-node@v4 在尝试使用 pnpm cache 时,pnpm 还未安装 **解决方案:** 1. 调整步骤顺序:先安装 pnpm,再设置 Node.js 2. 升级 pnpm/action-setup 从 v2 到 v4 3. 明确指定 pnpm version: 9 **修改内容:** - 将 "Set up pnpm" 步骤移到 "Set up Node.js" 之前 - 更新 pnpm/action-setup@v2 → pnpm/action-setup@v4 - 添加 version: 9 配置 **正确的步骤顺序:** 1. Checkout 代码 2. Set up pnpm (指定版本) 3. Set up Node.js (可以使用 pnpm cache) 4. Install dependencies 相关 Issue: #174 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .github/workflows/security-scan.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/security-scan.yml b/.github/workflows/security-scan.yml index f148b318..160a0df9 100644 --- a/.github/workflows/security-scan.yml +++ b/.github/workflows/security-scan.yml @@ -38,14 +38,16 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - name: Set up pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: '20' cache: 'pnpm' cache-dependency-path: frontend/pnpm-lock.yaml - - name: Set up pnpm - uses: pnpm/action-setup@v2 - name: Install dependencies working-directory: frontend run: pnpm install --frozen-lockfile