From 1e2cba4c2bb1c3a126a5912da2026098b291996a Mon Sep 17 00:00:00 2001 From: chufan Date: Wed, 24 Jun 2026 16:13:40 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=8D=87=E7=BA=A7ci=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=EF=BC=8C=E4=BF=AE=E5=A4=8D=E6=9E=84=E5=BB=BA?= =?UTF-8?q?=E3=80=81=E9=83=A8=E7=BD=B2=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- scripts/ci | 49 +++++++++++++++++++++++++++++++------------------ 2 files changed, 32 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 803ec20c5..723c4bc87 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@
JavaScriptCollection

diff --git a/scripts/ci b/scripts/ci index 3782d367f..64dd9744d 100755 --- a/scripts/ci +++ b/scripts/ci @@ -1,27 +1,40 @@ #!/bin/bash -## -## 依赖安装脚本 -## 使用: -## ./scripts/ci -## -#NPM_REGISTRY="https://mirrors.tencent.com/npm/" -NPM_REGISTRY="https://registry.npmmirror.com" +# +# 依赖安装脚本 +# 使用: +# ./scripts/ci +# -## 获取所有参数 -echo "运行命令: export COREPACK_NPM_REGISTRY=$NPM_REGISTRY && corepack enable pnpm && pnpm i --registry $NPM_REGISTRY --frozen-lockfile $*" +set -euo pipefail +NPM_REGISTRY="${NPM_REGISTRY:-https://registry.npmmirror.com}" +COREPACK_REGISTRY="${COREPACK_REGISTRY:-https://registry.npmjs.org}" -# 检查是否已安装 corepack,如果没有则安装 -if ! command -v corepack &> /dev/null; then - echo "未检测到 corepack,正在安装..." - npm i corepack@latest -g +echo "运行命令: pnpm i --registry $NPM_REGISTRY --frozen-lockfile --force $*" +echo "COREPACK_REGISTRY: $COREPACK_REGISTRY" + +if ! command -v corepack >/dev/null 2>&1; then + echo "未检测到 corepack,正在安装..." + npm i -g corepack@latest --force else - echo "corepack 已安装,版本: $(corepack --version)" + echo "corepack 已安装,版本: $(corepack --version)" fi -# 导出corepack环境变量,安装pnpm版本 -export COREPACK_NPM_REGISTRY=$NPM_REGISTRY && corepack enable pnpm +export COREPACK_ENABLE_DOWNLOAD_PROMPT=0 +export COREPACK_NPM_REGISTRY="$COREPACK_REGISTRY" + +if pnpm --version >/dev/null 2>&1; then + echo "pnpm 已安装,版本: $(pnpm --version)" +else + echo "正在通过 corepack 启用 pnpm..." + corepack enable pnpm || true + if ! pnpm --version >/dev/null 2>&1; then + echo "corepack 版本过低,正在升级..." + npm i -g corepack@latest --force + corepack enable pnpm + fi + echo "pnpm 已安装,版本: $(pnpm --version)" +fi -# 安装项目依赖 -w -F @142vip/fairy-cli -pnpm i --registry $NPM_REGISTRY --frozen-lockfile "$@" +pnpm i --registry "$NPM_REGISTRY" --frozen-lockfile --force "$@"