mirror of
https://git.bjxgj.com/xgj/xgj-actions.git
synced 2025-10-14 06:33:37 +08:00
fix: 将 pnpm store 路径固定到临时目录以避免在项目根创建缓存
This commit is contained in:
@@ -147,13 +147,13 @@ runs:
|
||||
CACHE_PATH="$HOME/.npm"
|
||||
;;
|
||||
"pnpm")
|
||||
# pnpm store 路径(通过命令获取,以兼容自定义配置)
|
||||
if command -v pnpm >/dev/null 2>&1; then
|
||||
CACHE_PATH="$(pnpm store path)"
|
||||
else
|
||||
# 回退:若未能获取,则使用常见默认路径
|
||||
CACHE_PATH="$HOME/.pnpm-store"
|
||||
fi
|
||||
# 固定 pnpm store 路径到 runner 的临时目录或 HOME,避免在项目根生成 .pnpm-store
|
||||
# 说明:一些仓库的 .npmrc 可能配置了 store-dir=.pnpm-store,会导致在工作目录创建 .pnpm-store
|
||||
# 这里通过设置 PNPM_STORE_DIR 环境变量进行覆盖,确保缓存路径稳定可控
|
||||
DEFAULT_PNPM_STORE="${RUNNER_TEMP:-$HOME}/.pnpm-store"
|
||||
# 将目录导出到环境,供后续安装步骤使用
|
||||
echo "PNPM_STORE_DIR=${DEFAULT_PNPM_STORE}" >> "$GITHUB_ENV"
|
||||
CACHE_PATH="${DEFAULT_PNPM_STORE}"
|
||||
;;
|
||||
"yarn")
|
||||
# yarn v1 默认缓存目录(yarn berry 采用不同机制,这里聚焦 v1 常见场景)
|
||||
@@ -165,6 +165,11 @@ runs:
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
# 打印最终缓存目录,便于调试与确认
|
||||
echo "📁 最终缓存目录: ${CACHE_PATH}"
|
||||
if [[ "$MANAGER" == "pnpm" ]]; then
|
||||
echo "📦 PNPM_STORE_DIR=${PNPM_STORE_DIR:-$DEFAULT_PNPM_STORE}"
|
||||
fi
|
||||
echo "path=${CACHE_PATH}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: 拉取缓存依赖
|
||||
|
Reference in New Issue
Block a user